Python ทำคณิตศาสตร์วันที่/เวลาได้ง่ายด้วย timedelta ใช้ datetime.datetime() บวกลบกับ datetime.timedelta()
datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
อาร์กิวเมนต์ทั้งหมด optional ค่าเริ่มต้น 0 รองรับ int/float บวก/ลบ
ตัวอย่าง: บวกลบเวลา
import datetime
old_time = datetime.datetime.now()
print(old_time)
new_time = old_time - datetime.timedelta(hours=2, minutes=10)
print(new_time)
ผลลัพธ์
2018-01-04 11:09:00.694602
2018-01-04 08:59:00.694602
timedelta ไม่รองรับ datetime.time() ใช้ datetime.datetime.combine() แปลงก่อน
ตัวอย่าง: หาความต่างระหว่างสอง datetime
t1 = datetime.datetime.now()
t2 = datetime.datetime.now()
print(t1 - t2)
print(type(t1 - t2))
ผลลัพธ์
-1 day, 23:59:56.653627
<class 'datetime.timedelta'>