Hướng dẫn how do i compare two date objects in python? - làm cách nào để so sánh hai đối tượng ngày tháng trong python?

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?

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

36.1k16 Huy hiệu vàng104 Huy hiệu bạc128 Huy hiệu đồng16 gold badges104 silver badges128 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

9.13741 Huy hiệu vàng117 Huy hiệu bạc214 Huy hiệu đồng41 gold badges117 silver badges214 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,6K22 gold badges106 silver badges113 bronze badges

Đã trả lời ngày 15 tháng 11 năm 2011 lúc 20:02Nov 15, 2011 at 20:02

Fred Foofred FooFred Foo

348K73 Huy hiệu vàng726 Huy hiệu bạc824 Huy hiệu Đồng73 gold badges726 silver badges824 bronze badges

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:

  • date1 = "31/12/2015"
    date2 = "01/01/2016"
    
    0 sẽ trở lại
    date1 = "31/12/2015"
    date2 = "01/01/2016"
    
    1
  • date1 = "31/12/2015"
    date2 = "01/01/2016"
    
    2 sẽ trở lại
    date1 = "31/12/2015"
    date2 = "01/01/2016"
    
    3

wjandrea

25.1k8 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.34110 Huy hiệu vàng44 Huy hiệu bạc63 Huy hiệu Đồng10 gold badges44 silver badges63 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

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

Sử dụng hàm Strptime [DATE_STR, Định dạng] để chuyển đổi chuỗi ngày thành đối tượng DateTime theo định dạng tương ứng.Để có được sự khác biệt giữa hai ngày, trừ ngày 2 từ ngày 1.Một kết quả là một đối tượng Timedelta.

Làm cách nào để so sánh hai dấu thời gian trong Python?subtract date2 from date1. A result is a timedelta object.

Làm cách nào để so sánh hai dấu thời gian trong Python?

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:>,using simple comparison operators: >, =. The difference can be calculated using a simple '–' operator. Given time can be converted to pandas timestamp using pandas. Timestamp[] method.

Làm thế nào để bạn so sánh hai lần hẹn hò?

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 giống như ngày 2 ..
0 - nếu ngày1 giống như ngày 2 ..
> 0 - nếu ngày1 muộn hơn ngày 2 ..

Python có thể so sánh các chuỗi ngày không?

Sử dụng mô -đun thời gian để so sánh hai ngày trong Python Mô -đun thời gian cung cấp phương pháp Strptime để thao tác ngày.Nó lấy ngày ở định dạng chuỗi làm đầu vào và chuyển đổi nó thành định dạng ngày của Python.Sau đó, một so sánh đơn giản có thể được thực hiện để so sánh hai ngày. The time module provides the strptime method to manipulate the dates. It takes the date in string format as the input and converts it into Python's date format. Later, a simple comparison can be performed to compare two dates.

Bài Viết Liên Quan

Chủ Đề