datetime.datetime을 datetime.date와 비교할 수 없습니다.
다음 코드가 있고 위의 오류가 발생합니다. 파이썬을 처음 접했기 때문에 여기 구문을 이해하는 데 문제가 있으며 오류를 수정하는 방법이 있습니다.
if not start or date < start: start = date
datetime.date()datetime에서 날짜로 변환 하는 방법이 있습니다.
반대 변환을 수행하려면이 함수를 사용할 수 있습니다. datetime.datetime(d.year, d.month, d.day)
당신은 사용할 수 있습니다 datetime.datetime.combine다음, 날짜 객체에 날짜 개체를 비교 다른 날짜 객체로 변환 된 개체를 비교하는 방법을.
import datetime
dt1 = datetime.datetime(2011, 03, 03, 11, 12)
day = datetime.date(2011, 03, 02)
dt2 = datetime.datetime.combine(day, datetime.time(0, 0))
print dt1 > dt2
시작이 datetime이라고 가정하면 다음과 같이 사용하십시오.
if not start or date < start.date(): start = date
나는 날짜로 변환 날짜에 필요가 있다고 생각하지 않습니다 그냥 반대를하고 비교할 수있는 파이썬은.
또는 변환 할 날짜와 00:00 시간을 사용하여 새 datetime을 만드는 다른 방법이 있습니다.
귀하의 변수 시작 및 날짜는 내가 생각하는 다른 유형입니다. 하나는 datetime이고 다른 하나는 날짜입니다. 적절한 도움을 받으려면 더 많은 코드를 표시해야 할 수도 있습니다.
그러나 이것을보십시오 : http://docs.python.org/library/datetime.html#available-types
datetime.datetime에는 datetime.date와 같이 일, 월 및 연도와 같은 속성이 있음을 알려줍니다.
이 문제는 날짜 필드 ( DateField)와 날짜 시간 필드 ( DateTimeField) 를 비교하려고 할 때 발생합니다 .
해결책은 모델에서 필드를 정의한 위치를 확인하고 유형이 균일한지 확인하는 것입니다.
나는 당신이 제안 을 모두 교체 DateField와 함께DateTimeField .
pandas그러나을 사용하는 동안 위의 오류가 발생했습니다 . 왜냐하면 date_column은 잘못된 형식을 지정하고 있다는 사실을 깨닫지 못하고 많은 시간을 낭비한 문자열 이기 때문 입니다.
# didnt work
df[(df.date_column > parse_datestr('2018-01-01'))]
# works
df['date_column'] = pd.to_datetime(df['date_column'])
df[(df.date_column > '2018-01-01') & (df.date_column < '2018-02-28')]
참조 URL : https://stackoverflow.com/questions/7239315/cant-compare-datetime-datetime-to-datetime-date
'Program Club' 카테고리의 다른 글
| SVN에서 태그와 분기의 차이점은 무엇입니까? (0) | 2021.01.07 |
|---|---|
| win API를 사용하여 HRESULT 값의 문자열 표현을 얻는 방법이 있습니까? (0) | 2021.01.07 |
| Makefile에서 메시지를 어떻게 인쇄 할 수 있습니까? (0) | 2021.01.07 |
| window.onload 이벤트에 추가 하시겠습니까? (0) | 2021.01.07 |
| Play 스토어 알파 테스트 다운로드 링크가 작동하지 않음 (0) | 2021.01.07 |