Một cách tiếp cận để biết bao xahow far from now
- Hỗ trợ các ngôn ngữ khác nhau bằng cách truyền trong PARAM
li
, danh sách dấu thời gian tương ứng.
from datetime import datetime
from dateutil import parser
t1 = parser.parse["Tue May 26 15:14:45 2021"]
t2 = parser.parse["Tue May 26 15:9:45 2021"]
# 5min
t3 = parser.parse["Tue May 26 11:14:45 2021"]
# 4h
t4 = parser.parse["Tue May 26 11:9:45 2021"]
# 1day
t6 = parser.parse["Tue May 25 11:14:45 2021"]
# 1day4h
t7 = parser.parse["Tue May 25 11:9:45 2021"]
# 1day4h5min
t8 = parser.parse["Tue May 19 11:9:45 2021"]
# 1w
t9 = parser.parse["Tue Apr 26 11:14:45 2021"]
# 1m
t10 = parser.parse["Tue Oct 08 06:00:20 2019"]
# 1y7m, 19m
t11 = parser.parse["Tue Jan 08 00:00:00 2019"]
# 2y4m, 28m
# create: date of object creation
# now: time now
# li: a list of string indicate time [in any language]
# lst: suffix [in any language]
# long: display length
def howLongAgo[create, now, li, lst, long=2]:
dif = create - now
print[dif.days]
sec = dif.days * 24 * 60 * 60 + dif.seconds
minute = sec // 60
sec %= 60
hour = minute // 60
minute %= 60
day = hour // 24
hour %= 24
week = day // 7
day %= 7
month = [week * 7] // 30
week %= 30
year = month // 12
month %= 12
s = []
for ii, tt in enumerate[[sec, minute, hour, day, week, month, year]]:
ss = li[ii]
if tt != 0:
if tt == 1:
s.append[str[tt] + ss]
else:
s.append[str[tt] + ss + 's']
return ' '.join[list[reversed[s]][:long]] + ' ' + lst
t = howLongAgo[t1, t11, [
'second',
'minute',
'hour',
'day',
'week',
'month',
'year',
], 'ago']
print[t]
# 2years 4months ago
Trong bài viết này, chúng tôi sẽ thảo luận về cách chuyển đổi ngày thành đối tượng DateTime trong Python.
Chúng tôi sử dụng phương thức kết hợp từ mô -đun DateTime để kết hợp đối tượng ngày và thời gian để tạo đối tượng DateTime.
Cú pháp
Phương thức cú pháp của kết hợp [] như sau.combine[] method is as follows.
datetime.combine[date,time]
Where,
- Ngày là một đối tượng ngày. is a date object.
- Thời gian là một đối tượng thời gian. is a time object.
Phương thức này trả về một đối tượng DateTime là sự kết hợp của hai đối tượng trên [ngày, thời gian].
Chuyển đổi đối tượng ngày thành đối tượng DateTime
Nếu chúng ta có một đối tượng ngày và không có đối tượng thời gian, thì bạn sẽ khởi tạo đối tượng thời gian ở mức tối thiểu bằng cách sử dụng đối tượng DateTime [phương tiện tối thiểu vào nửa đêm, tức là 00:00:00].
Thí dụ
Trong mã ví dụ dưới đây, chúng tôi kết hợp một đối tượng ngày được truy xuất bằng cách sử dụng phương thức Today [] và chúng tôi đã khởi tạo đối tượng thời gian theo thời gian tối thiểu [00:00:00] bằng phương thức Min.Time []. Và kết hợp hai đối tượng này bằng cách áp dụng phương thức DateTime.combine [].
from datetime import date from datetime import datetime my_date = date.today[] print["The date object:",my_date] my_time = datetime.min.time[] print["The time object:",my_time] my_datetime = datetime.combine[my_date, my_time] print["The combined datetime object:",my_datetime]
Đầu ra
Đầu ra của mã trên như sau.
The date object: 2022-05-19 The time object: 00:00:00 The combined datetime object: 2022-05-19 00:00:00
Khi cả đối tượng ngày và thời gian được đưa ra
Ở đây, chúng tôi khởi tạo cả đối tượng ngày và thời gian. Và kết hợp chúng vào một đối tượng DateTime bằng phương thức kết hợp.
Thí dụ
Trong mã ví dụ dưới đây, chúng tôi kết hợp một đối tượng ngày được truy xuất bằng cách sử dụng phương thức Today [] và chúng tôi đã khởi tạo đối tượng thời gian theo thời gian tối thiểu [00:00:00] bằng phương thức Min.Time []. Và kết hợp hai đối tượng này bằng cách áp dụng phương thức DateTime.combine [].
import datetime my_date = datetime.datetime[2012, 2, 12] print["The date object:",my_date] my_time = datetime.time[1, 30] print["The time object:",my_time] combined_datetime = my_date.combine[my_date, my_time] print["The combined datetime object:",combined_datetime]
Đầu ra
Đầu ra của mã trên như sau.
The date object: 2012-02-12 00:00:00 The time object: 01:30:00 The combined datetime object: 2012-02-12 01:30:00
Khi cả đối tượng ngày và thời gian được đưa ra
Ở đây, chúng tôi khởi tạo cả đối tượng ngày và thời gian. Và kết hợp chúng vào một đối tượng DateTime bằng phương thức kết hợp. datetime object.
Trong ví dụ này, chúng tôi sẽ chuyển đổi một đối tượng DateTime khi cả đối tượng ngày và thời gian được đưa ra.
Thí dụ
from datetime import date from datetime import datetime my_date = date.today[] my_datetime = datetime[my_date.year, my_date.month, my_date.day] print[my_datetime]
Đầu ra
2022-09-05 00:00:00
Đầu ra của mã trên như sau.
- Khi cả đối tượng ngày và thời gian được đưa ra
- Ở đây, chúng tôi khởi tạo cả đối tượng ngày và thời gian. Và kết hợp chúng vào một đối tượng DateTime bằng phương thức kết hợp.
- Trong ví dụ này, chúng tôi sẽ chuyển đổi một đối tượng DateTime khi cả đối tượng ngày và thời gian được đưa ra.
- Đầu ra của mã trên như sau;
- Sử dụng DateTime []
- Trình xây dựng DateTime [] trong Python chấp nhận các giá trị năm, tháng và ngày làm tham số và tạo một đối tượng DateTime.
- Vượt qua các giá trị năm, tháng và ngày của đối tượng ngày mong muốn [như my_date.year, my_date.month, my_date.day] cho hàm tạo này để chuyển đổi đối tượng ngày thành đối tượng DateTime.
- Cập nhật vào ngày 08 tháng 9 năm 2022 06:58:03
- Làm thế nào để chuyển đổi dấu thời gian thành DateTime trong Kotlin?
- Làm thế nào để chuyển đổi gấu trúc bù sang ngày trăn?
- Làm thế nào để chuyển đổi ngày Python thành Unix Timestamp?
- Làm thế nào để chuyển đổi chuỗi ngày Python thành đối tượng ngày?
- Làm thế nào để chuyển đổi một ngày JS sang một đối tượng ngày Python?
- Làm thế nào để chuyển đổi ngày Python ở định dạng JSON?
- Làm thế nào để chuyển đổi DateTime MySQL thành Unix Timestamp?
- Chuyển đổi chuỗi thành DateTime và ngược lại trong Python