source

날짜가 날짜 시간과 같은지 확인하려면 어떻게 해야 합니까?오늘 저녁에?

gigabyte 2023. 8. 27. 22:39
반응형

날짜가 날짜 시간과 같은지 확인하려면 어떻게 해야 합니까?오늘 저녁에?

이 조건은 항상 다음과 같이 평가됩니다.True시간을 비교하는 것이기 때문에 같은 날이라도.

from datetime import datetime

# ...

if date_num_posts < datetime.today(): 

날짜가 다음 날짜와 같은지 확인하려면 어떻게 해야 합니까?datetime.today()?

날짜를 비교하고 싶다면,

yourdatetime.date() < datetime.today().date()

아니면, 분명히,

yourdatetime.date() == datetime.today().date()

만약 당신이 그들이 같은 날짜인지 확인하고 싶다면요.

설명서는 일반적으로 유용합니다.그것은 또한 보통 첫번째 구글 결과입니다.python thing_i_have_a_question_about"뱀"이라는 이름의 기능/모듈에 대한 질문이 아니라면,

기본적으로,datetime모듈에는 특정 시점을 저장하는 세 가지 유형이 있습니다.

  • date년, 월, 일에 대해
  • time시간, 분, 초, 마이크로초, 시간대 정보
  • datetime날짜와 시간을 결합합니다.방법이 있습니다.date()그리고.time()상응하는 것을 얻기 위해date그리고.time물건, 그리고 편리한 것이 있습니다.combine결합하는 기능date그리고.time의 상태가.datetime.
  • 월 값의 날짜만 비교해야 하는 경우 다음 코드를 사용할 수 있습니다.

    if yourdate.day == datetime.today().day:
        # do something
    
  • 두 날짜 간의 차이가 허용되는지 확인해야 하는 경우 시간 델타를 사용할 수 있습니다.

    if (datetime.today() - yourdate).days == 0:
        #do something
    
  • 날짜 부분만 비교하려는 경우 다음과 같이 간단히 사용할 수 있습니다.

    from datetime import datetime, date
    if yourdatetime.date() < datetime.today().date()
        # do something
    

시간 델타 형식은 다음과 같습니다.

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

따라서 실제로 필요한 항목에 따라 일, 초, 밀리초, 분 등의 차이를 확인할 수 있습니다.

from datetime import datetime
if (datetime.today() - yourdate).days == 0:
    #do something

두 날짜가 정확히 동일한지 확인해야 하는 경우 시간 델타(0)를 사용할 수 있습니다.

from datetime import datetime, timedelta
if (datetime.today() - yourdate) == timedelta(0):
    #do something

시간, 분, 초 및 마이크로초를 원하는 대로 설정할 수 있습니다.

datetime.datetime.today().replace(hour=0, minute=0, second=0, microsecond=0)

하지만 진실의 답은 아마도 그들이 모두 0일 때 가장 좋을 것이고 당신은 단지 비교할 수 있습니다..date()시대의

하지만 수백 번의 날짜를 비교해야 한다면 더 빠를 수도 있습니다. 왜냐하면 당신은 단지 그것을 하기만 하면 되기 때문입니다.replace()한 번 대 수백 번의 전화 통화date()

all(getattr(someTime,x)==getattr(today(),x) for x in ['year','month','day'])

를 사용하여 비교해야 합니다..date()하지만 예를 들어, 한 달 또는 분 단위로 비교하는 등의 경우를 위해 이 방법을 예로 남깁니다.

또 다른 방법은 날짜를 문자열로 변환하여 비교하는 것입니다.

from datetime import datetime

today= datetime.today()

if today.strftime('%Y-%m-%d') == other_datetime.strftime('%Y-%m-%d'):
    print("same day as today: {0}".format(today.strftime('%Y-%m-%d')))

언급URL : https://stackoverflow.com/questions/6407362/how-can-i-check-if-a-date-is-the-same-day-as-datetime-today

반응형