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

จะค้นหาความแตกต่างของเวลาโดยใช้ Python ได้อย่างไร


การคำนวณวันที่และเวลาใน 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'>