날짜가 datetime.today ()와 같은 날인지 어떻게 확인할 수 있습니까?
이 조건 True
은 시간을 비교하기 때문에 같은 날이라도 항상 평가됩니다 .
from datetime import datetime
# ...
if date_num_posts < datetime.today():
날짜가 같은 날인지 어떻게 확인할 수 datetime.today()
있습니까?
날짜 만 비교하고 싶다면
yourdatetime.date() < datetime.today().date()
또는 당연히
yourdatetime.date() == datetime.today().date()
같은 날짜 인지 확인하려면 .
문서 는 일반적으로 도움이됩니다. 또한 일반적으로에 대한 첫 번째 Google 결과입니다 python thing_i_have_a_question_about
. 귀하의 질문이 "snake"라는 함수 / 모듈에 관한 것이 아니라면.
기본적으로 datetime
모듈에는 특정 시점을 저장하는 세 가지 유형이 있습니다.
date
년, 월, 일time
시, 분, 초, 마이크로 초, 시간대 정보datetime
날짜와 시간을 결합합니다. 이 방법을 가지고date()
및time()
해당 얻을 수date
및time
개체를하고 편리한 거기에combine
결합하는 기능date
과time
으로는datetime
.
날짜 값만 비교해야하는 경우 다음 코드를 사용할 수 있습니다.
if yourdate.day == datetime.today().day: # do something
두 날짜의 차이가 허용 되는지 확인해야하는 경우 timedelta 를 사용할 수 있습니다 .
if (datetime.today() - yourdate).days == 0: #do something
날짜 부분 만 비교하려면 다음을 사용하면됩니다.
from datetime import datetime, date if yourdatetime.date() < datetime.today().date() # do something
timedelta의 형식은 다음과 같습니다.
datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
따라서 실제로 필요한 것에 따라 일, 초, msec, 분 등으로 diff를 확인할 수 있습니다.
from datetime import datetime
if (datetime.today() - yourdate).days == 0:
#do something
두 날짜가 정확히 동일한 지 확인해야하는 경우 timedelta (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()
시간 의 s를 비교할 수 있습니다.
replace()
한 번 대 수백 번의 호출 만 수행하면되므로 수백 개의 datetime을 비교해야하는 경우 더 빠를 수 있습니다.date()
all(getattr(someTime,x)==getattr(today(),x) for x in ['year','month','day'])
를 사용하여 비교해야 .date()
하지만, 예를 들어 월별 또는 분별로 비교하려는 경우를 대비하여이 방법을 예로 남겨 둡니다.
'Nice programing' 카테고리의 다른 글
Prolog의 좋은 초보자 자료 (0) | 2020.10.28 |
---|---|
파일 이름 패턴으로 존재하는 파일 (0) | 2020.10.28 |
event.target과 함께 사용할 수있는 속성은 무엇입니까? (0) | 2020.10.28 |
fiddler HTTPMethod (GET / PUT / POST / DELETE…) 열 (0) | 2020.10.28 |
문자열에 대한 편집 가능한 텍스트 (0) | 2020.10.28 |