Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีการแปลงเวลาวินาทีเป็นรูปแบบ h:m:s ใน Python?


หากคุณมีฟังก์ชันที่ส่งคืนข้อมูลในหน่วยวินาที แต่คุณต้องการข้อมูลนั้นในรูปแบบ hours:minutes:seconds คุณสามารถใช้ฟังก์ชัน divmod() ซึ่งทำการหารเพียงส่วนเดียว ในการสร้างทั้งผลหารและเศษที่เหลือ คุณสามารถได้ผลลัพธ์อย่างรวดเร็วด้วยการดำเนินการทางคณิตศาสตร์เพียงสองครั้ง:

ตัวอย่าง

seconds = 56741
m, s = divmod(seconds, 60)
h, m = divmod(m, 60)
print "%d:%02d:%02d" % (h, m, s)

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ -

15:45:41

คุณยังสามารถใช้ฟังก์ชัน timedelta เพื่อรับฟังก์ชันเดียวกันแต่ต้องเสียประสิทธิภาพ

ตัวอย่าง

import datetime
timedelta_obj = datetime.timedelta(seconds=56741)
print(timedelta_obj)

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ -

15:45:41