Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào chúng ta có thể thực hiện phép toán ngày và giờ trong Python?


Rất dễ dàng để thực hiện các phép toán ngày và giờ trong Python bằng cách sử dụng các đối tượng thời gian. Bất cứ khi nào bạn muốn thêm hoặc bớt vào một ngày / giờ, hãy sử dụng datetime.datetime (), sau đó thêm hoặc bớt các thể hiện datetime.timedelta (). Một đối tượng thời gian biểu thị một khoảng thời gian, sự khác biệt giữa hai ngày hoặc thời gian. Phương thức khởi tạo hẹn giờ có chữ ký hàm sau -

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

Lưu ý:Tất cả các đối số là tùy chọn và mặc định là 0. Đối số có thể là ints, longs hoặc float và có thể là số dương hoặc số âm. Bạn có thể đọc thêm về nó tại đây - https://docs.python.org/2/library/datetime.html#timedelta-objects

Ví dụ

Ví dụ về việc sử dụng các đối tượng và ngày tháng đồng thời -

import datetime
old_time = datetime.datetime.now()
print(old_time)
new_time = old_time - datetime.timedelta(hours=2, minutes=10)
print(new_time)

Đầu ra

Điều này sẽ cung cấp đầu ra -

2018-01-04 11:09:00.694602
2018-01-04 08:59:00.694602

số học timedelta () không được hỗ trợ cho các đối tượng datetime.time (); nếu bạn cần sử dụng phần bù từ một đối tượng datetime.time () hiện có, chỉ cần sử dụng datetime.datetime.combine () để tạo một phiên bản datetime.datetime (), thực hiện các phép tính của bạn và 'giải nén' lại thời gian bằng .time () phương thức.

Trừ 2 đối tượng datetime ra một đối tượng timetime. Đối tượng hẹn giờ này có thể được sử dụng để tìm sự khác biệt chính xác giữa 2 lịch ngày.

Ví dụ

t1 = datetime.datetime.now()
t2 = datetime.datetime.now()
print(t1 - t2)
print(type(t1 - t2))

Đầu ra

Điều này sẽ cung cấp đầu ra -

-1 day, 23:59:56.653627
<class 'datetime.timedelta'>