2012-06-25 1 views
4

datetime.date 개체를 datetime.datetime 개체로 변환하는 기본 제공 함수가 누락 된 항목에 대해 0입니까? 예를 들어, 나는이누락 된 시간 특성에 대해 datetime.date 개체를 0으로 채우십시오.

tdatetime = datetime.date.datetime() 
tdatetime = datetime.datetime(tdate) 

중 하나 같은 것을 쓰고 싶어 내가 출력이

datetime.datetime(2012, 1, 31, 0, 0) 

그러나 어느 작품되고 싶어

tdate = datetime.date(2012,1,31) 

가정합니다. There is a builtin function to go from datetime.datetime to datetime.date, but I'm looking for the reverse operation.

하나 개의 매우 가난한 솔루션을 작성하는 것입니다 :

datetime.datetime(tdate.year(), tdate.month(), tdate.day(), 0, 0) 

내가 특별히 그 일이 나쁜 방법을 피하려고.

나는 이것을하기 위해 이미 내 자신의 작은 함수를 작성했지만 모듈에 제공해야한다고 생각한다. 내 기능을 사용하기 위해 일부 시스템 전체 가져 오기가 복잡해집니다. 그것은 실행 가능합니다. Pythonic이 아닙니다.

단지 datetime 모듈 함수를 사용하여 효율적인 방법이 있는지를 아는 사람이 있는지 묻는 것입니다. 빈 time instance

답변

11

사용 .combine(date, time) :

>>> import datetime 
>>> tdate = datetime.date(2012,1,31) 
>>> datetime.datetime.combine(tdate, datetime.time()) 
datetime.datetime(2012, 1, 31, 0, 0) 

대신 상수를 사용하려는 경우

time.min을 사용 :

>>> datetime.datetime.combine(tdate, datetime.time.min) 
datetime.datetime(2012, 1, 31, 0, 0) 
+0

이했다. 받아들이 기 위해 11 분을 기다려야한다고 말하는 것이지만, 그 때가됩니다. 감사. – ely

+0

@EMS : 다른 사람들이 당신을 위해 더 나은 답변을 할 수 있고 기회가 필요할 수도 있기 때문입니다. :-) 나는 서두르지 않는다. –

+0

@EMS : 예를 들어, 나는 시간 인스턴스에 대한 시간 인수가 선택 사항임을 깨달았습니다. 0을주지 않으면 같은 결과가됩니다. –

관련 문제