การคำนวณวันที่และเวลาใน Python ทำได้ง่ายมากโดยใช้วัตถุเดลต้าเวลา เมื่อใดก็ตามที่คุณต้องการเพิ่มหรือลบไปยังวันที่/เวลา ให้ใช้ DateTime.datetime() จากนั้นเพิ่มหรือลบวันที่ time.time delta() อินสแตนซ์ ออบเจ็กต์เดลต้าเวลาแสดงถึงระยะเวลา ความแตกต่างระหว่างสองวันหรือเวลา ตัวสร้างเดลต้าเวลามีลายเซ็นฟังก์ชันต่อไปนี้
DateTime.timedelta([วัน[, วินาที[, ไมโครวินาที[, มิลลิวินาที[, นาที[, ชั่วโมง[, สัปดาห์]]]]]])¶
หมายเหตุ:อาร์กิวเมนต์ทั้งหมดเป็นทางเลือกและมีค่าเริ่มต้นเป็น 0 อาร์กิวเมนต์อาจเป็น int, longs หรือ float และอาจเป็นค่าบวกหรือค่าลบ คุณสามารถอ่านเพิ่มเติมได้ที่นี่ https://docs.python.org/2/library/datetime.html#timedelta-objects
ตัวอย่าง
ตัวอย่างการใช้วัตถุและวันที่เดลต้าเวลา
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
time delta() ไม่รองรับเลขคณิตสำหรับวันที่ time.time() ออบเจ็กต์; หากคุณต้องการใช้ออฟเซ็ตจากวัตถุ date time.time() ที่มีอยู่ เพียงแค่ใช้ date time.datetime.combine() เพื่อสร้างวันที่ time.date time() อินสแตนซ์ ทำการคำนวณของคุณและ 'แยก' เวลาอีกครั้ง ด้วยวิธีการ .time()
การลบออบเจ็กต์เวลาวันที่ 2 อันจะทำให้ได้ออบเจ็กต์เดลต้าเวลา ออบเจ็กต์เดลต้าครั้งนี้สามารถใช้เพื่อค้นหาความแตกต่างที่แน่นอนระหว่าง 2 วันที่และเวลา
ตัวอย่าง
t1 = datetime.datetime.now() t2 = datetime.datetime.now() print(t1 - t2) print(type(t1 - t2))
ผลลัพธ์
สิ่งนี้จะให้ผลลัพธ์
-1 day, 23:59:56.653627 <class 'datetime.timedelta'>