Xử lý ngày giờ là nhu cầu phổ biến: tính tuổi, đo khoảng thời gian, định dạng ngày tháng. Module datetime của Python lo trọn việc này.
Lấy ngày giờ hiện tại
from datetime import datetime, date, timedelta
bay_gio = datetime.now()
hom_nay = date.today()
print(hom_nay) # 2026-09-02
Tạo ngày giờ cụ thể
ngay = date(2026, 9, 2)
thoi_diem = datetime(2026, 9, 2, 14, 30) # 14:30 ngày 2/9
Định dạng ngày (strftime)
bay_gio.strftime("%d/%m/%Y") # 02/09/2026
bay_gio.strftime("%H:%M:%S") # 14:30:00
bay_gio.strftime("%d/%m/%Y %H:%M") # 02/09/2026 14:30
Chuyển chuỗi thành ngày (strptime)
ngay = datetime.strptime("02/09/2026", "%d/%m/%Y")
Tính toán với timedelta
hom_nay = date.today()
tuan_sau = hom_nay + timedelta(days=7)
khoang_cach = date(2027, 1, 1) - hom_nay
print(khoang_cach.days) # số ngày còn lại
Ví dụ: tính tuổi
sinh = date(2000, 5, 15)
tuoi = (date.today() - sinh).days // 365
Với datetime, hầu hết bài toán ngày giờ đều giải quyết gọn gàng. Khi cần xử lý múi giờ phức tạp, hãy tìm hiểu thêm thư viện zoneinfo hoặc pytz.
