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

ฉันจะใช้การชดเชยกับเวลาปัจจุบันใน Python ได้อย่างไร


เมื่อใดก็ตามที่คุณต้องการเพิ่มหรือลบ(ใช้ออฟเซ็ต) กับวันที่/เวลา ให้ใช้ datetime.datetime() จากนั้นเพิ่มหรือลบอินสแตนซ์ datetime.timedelta() ออบเจ็กต์ timedelta แสดงถึงระยะเวลา ความแตกต่างระหว่างสองวันหรือเวลา ตัวสร้าง timedelta มีลายเซ็นฟังก์ชันดังต่อไปนี้ -

datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])

หมายเหตุ อาร์กิวเมนต์ทั้งหมดเป็นทางเลือกและค่าเริ่มต้นเป็น 0 อาร์กิวเมนต์อาจเป็น int, longs หรือ float และอาจเป็นค่าบวกหรือค่าลบ คุณสามารถอ่านเพิ่มเติมได้ที่นี่ - https://docs.python.org/2/library/datetime.html#timedelta-objects

ตัวอย่าง

ตัวอย่างการใช้วัตถุและวันที่ของ timedelta -

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.time() ที่มีอยู่ เพียงแค่ใช้ datetime.datetime.combine() เพื่อสร้างอินสแตนซ์ datetime.datetime() คำนวณ และ 'แยก' เวลาอีกครั้งด้วย .time () วิธีการ