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

จะทำการคำนวณทางคณิตศาสตร์ในวันที่ใน Python ได้อย่างไร?


การคำนวณวันที่และเวลาใน Python ทำได้ง่ายมากโดยใช้วัตถุ timedelta เมื่อใดก็ตามที่คุณต้องการเพิ่มหรือลบไปยังวันที่/เวลา ให้ใช้ 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 () วิธีการ

การลบ 2 ออบเจ็กต์ datetime ให้อ็อบเจ็กต์ timedelta ออบเจ็กต์ timedelta นี้สามารถใช้เพื่อค้นหาความแตกต่างที่แน่นอนระหว่าง 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'>