Làm thế nào tôi có thể so sánh hai ngày để xem cái nào sau này, sử dụng Python?
Nội phân chính
- Làm cách nào để so sánh hai giá trị DateTime?
- Chúng ta có thể so sánh hai dấu thời gian trong Python không?
- Chúng ta có thể so sánh ngày với DateTime không?
- Làm thế nào để tôi tìm thấy sự khác biệt giữa hai lần trong Python?
Ví dụ: tôi muốn kiểm tra xem ngày hiện tại đã qua ngày cuối cùng trong danh sách này tôi đang tạo, về ngày nghỉ, để nó sẽ gửi email tự động, nói với quản trị viên cập nhật tệp Holiday.txt.
CodeForester
35K16 Huy hiệu vàng101 Huy hiệu bạc126 Huy hiệu đồng16 gold badges101 silver badges126 bronze badges
Đã hỏi ngày 15 tháng 11 năm 2011 lúc 19:58Nov 15, 2011 at 19:58
Steven Matthewssteven MatthewsSteven Matthews
8.91741 Huy hiệu vàng116 Huy hiệu bạc213 Huy hiệu Đồng41 gold badges116 silver badges213 bronze badges
7
Sử dụng phương thức datetime
và toán tử >> from datetime import datetime, timedelta
>>> past = datetime.now[] - timedelta[days=1]
>>> present = datetime.now[]
>>> past < present
True
>>> datetime[3000, 1, 1] < present
False
>>> present - datetime[2000, 4, 4]
datetime.timedelta[4242, 75703, 762105]
Thomas Decaux
Huy hiệu vàng 20.5K22 gold badges104 silver badges112 bronze badges
Đã trả lời ngày 15 tháng 11 năm 2011 lúc 20:02Nov 15, 2011 at 20:02
9
Sử dụng time
Giả sử bạn có những ngày ban đầu như các chuỗi như thế này:
date1 = "31/12/2015"
date2 = "01/01/2016"
Bạn có thể làm như sau:
newdate1 = time.strptime[date1, "%d/%m/%Y"]
newdate2 = time.strptime[date2, "%d/%m/%Y"]
Để chuyển đổi chúng thành định dạng ngày của Python. Sau đó, sự so sánh là rõ ràng:
0 sẽ trở lạidate1 = "31/12/2015" date2 = "01/01/2016"
1date1 = "31/12/2015" date2 = "01/01/2016"
2 sẽ trở lạidate1 = "31/12/2015" date2 = "01/01/2016"
3date1 = "31/12/2015" date2 = "01/01/2016"
wjandrea
24.6K8 Huy hiệu vàng53 Huy hiệu bạc73 Huy hiệu đồng8 gold badges53 silver badges73 bronze badges
Đã trả lời ngày 21 tháng 7 năm 2015 lúc 16:41Jul 21, 2015 at 16:41
1
date1 = "31/12/2015"
date2 = "01/01/2016"
4 sẽ trả lại date1 = "31/12/2015"
date2 = "01/01/2016"
3.date1 = "31/12/2015"
date2 = "01/01/2016"
6 sẽ trả lại date1 = "31/12/2015"
date2 = "01/01/2016"
7.date1 = "31/12/2015"
date2 = "01/01/2016"
8 sẽ trở lại date1 = "31/12/2015"
date2 = "01/01/2016"
9.Xem các tài liệu.
Đã trả lời ngày 15 tháng 11 năm 2011 lúc 20:03Nov 15, 2011 at 20:03
Daniel Nilldaniel NillDaniel Nill
5.32110 Huy hiệu vàng44 Huy hiệu bạc62 Huy hiệu Đồng10 gold badges44 silver badges62 bronze badges
1
Các câu trả lời khác sử dụng datetime
và so sánh cũng chỉ hoạt động theo thời gian mà không có ngày.
Ví dụ: để kiểm tra xem ngay bây giờ nó nhiều hơn 8:00 sáng, chúng ta có thể sử dụng:
import datetime
eight_am = datetime.time[ 8,0,0 ] # Time, without a date
Và sau này so sánh với:
datetime.datetime.now[].time[] > eight_am
sẽ trở lại
date1 = "31/12/2015"
date2 = "01/01/2016"
3Đã trả lời ngày 12 tháng 1 năm 2019 lúc 21:13Jan 12, 2019 at 21:13
LuisluisLuis
3.1694 Huy hiệu vàng32 Huy hiệu bạc55 Huy hiệu Đồng4 gold badges32 silver badges55 bronze badges
Với Python là ngôn ngữ dễ nhất có sẵn, thật dễ dàng để so sánh ngày trong Python các toán tử Python 0.0: #its matching your condition
days = math.ceil[diff_date.total_seconds[]/86400] #calculate days [in
one day 86400 seconds]
deductable_amount = round[amount,2]*days #calclulated fine for all days
Becuase nếu một giây nhiều hơn với ngày đáo hạn thì chúng ta phải tính phí
Đã trả lời ngày 23 tháng 5 năm 2019 lúc 12:41May 23, 2019 at 12:41
2
Làm cách nào để so sánh hai giá trị DateTime?
Phương thức so sánh [] trong C# được sử dụng để so sánh hai trường hợp DateTime ...
0 - nếu ngày1 muộn hơn ngày 2 ..
Chúng ta có thể so sánh hai dấu thời gian trong Python không?
Và, cần phải so sánh dấu thời gian để biết mục nhập mới nhất, các mục giữa hai dấu thời gian, mục cũ nhất, v.v. cho các nhiệm vụ khác nhau. So sánh giữa các đối tượng dấu thời gian của gấu trúc được thực hiện bằng cách sử dụng các toán tử so sánh đơn giản:>,it is required to compare timestamps to know the latest entry, entries between two timestamps, the oldest entry, etc. for various tasks. Comparison between pandas timestamp objects is carried out using simple comparison operators: >, =. The difference can be calculated using a simple '–' operator.
Chúng ta có thể so sánh ngày với DateTime không?
Khi bạn có hai đối tượng DateTime, ngày và thời gian, một trong số chúng đại diện có thể sớm hơn hoặc mới nhất so với các đối tượng khác hoặc bằng nhau. Để so sánh các đối tượng DateTime, bạn có thể sử dụng các toán tử so sánh lớn hơn, nhỏ hơn hoặc bằng. Giống như bất kỳ hoạt động so sánh nào khác, giá trị boolean được trả về.you can use comparison operators like greater than, less than or equal to. Like any other comparison operation, a boolean value is returned.
Làm thế nào để tôi tìm thấy sự khác biệt giữa hai lần trong Python?
Ví dụ, mã định dạng%H:%M:%s là hàng giờ, phút và giây. Để có được sự khác biệt giữa hai lần, trừ thời gian1 từ Time2.subtract time1 from time2.