time
모듈은 시대 이후 초를 사용하여 초기화 할 수 있습니다 :
>>> import time
>>> t1=time.gmtime(1284286794)
>>> t1
time.struct_time(tm_year=2010, tm_mon=9, tm_mday=12, tm_hour=10, tm_min=19,
tm_sec=54, tm_wday=6, tm_yday=255, tm_isdst=0)
datetime.datetime
같은 방식으로 객체 를 초기화하는 우아한 방법이 있습니까?
답변
datetime.datetime.fromtimestamp
시간대를 아는 경우와 동일한 결과를 얻을 수 있습니다. time.gmtime
>>> datetime.datetime.fromtimestamp(1284286794)
datetime.datetime(2010, 9, 12, 11, 19, 54)
또는
>>> datetime.datetime.utcfromtimestamp(1284286794)
datetime.datetime(2010, 9, 12, 10, 19, 54)
답변
>>> ts_epoch = 1362301382
>>> ts = datetime.datetime.fromtimestamp(ts_epoch).strftime('%Y-%m-%d %H:%M:%S')
>>> ts
'2013-03-03 01:03:02'
답변
문서에서 신기원 이후 초부터 시간대를 인식하는 datetime 객체를 얻는 권장 방법은 다음과 같습니다.
파이썬 3 :
from datetime import datetime, timezone
datetime.fromtimestamp(timestamp, timezone.utc)
from datetime import datetime
import pytz
datetime.fromtimestamp(timestamp, pytz.utc)
답변
datetime.datetime입니다. fromtimestamp (타임 스탬프) 및. 1970 년 1 월 1 일 이전의 날짜에 대해서는 utcfromtimestamp (타임 스탬프)가 창에서 실패하지만 음의 유닉스 타임 스탬프는 유닉스 기반 플랫폼에서 작동하는 것 같습니다. 문서는 다음과 같이 말합니다.
” 타임 스탬프가 플랫폼 C gmtime () 함수가 지원하는 값 범위를 벗어나면 ValueError가 발생할 수 있습니다. 1970 년에서 2038 년으로 제한되는 것이 일반적입니다 “
Issue1646728 도 참조하십시오