import datetime
now = datetime.datetime.utcnow()
这个now如何转成时间戳。。
用time.mktime(now.timetuple())这个方法产生的时间戳比time.time()产生的时间戳少28800秒,
现在我的方法是手动加上28800秒产生时间戳,,有没有更好的方法
PHP中文网2017-04-18 09:05:02
사실 질문자는 mktime
의 의미를 잘못 이해하고 있었습니다. Python의 공식 문서를 살펴보겠습니다.
time.mktime(t)
이것은 localtime()의 역함수입니다. 해당 인수는 struct_time 또는 전체 9-튜플입니다(dst 플래그가 필요하므로 -1을 dst 플래그로 사용하세요). 알 수 없는 경우) UTC가 아닌 현지 시간으로 시간을 표현합니다. time()과의 호환성을 위해 부동 소수점 숫자를 반환합니다. 입력 값을 유효한 시간으로 표현할 수 없으면 OverflowError 또는 ValueError가 발생합니다. 이는 잘못된 값이 Python 또는 기본 C 라이브러리에 의해 포착되는지 여부에 따라 다릅니다. 시간을 생성할 수 있는 가장 빠른 날짜는 플랫폼에 따라 다릅니다.
mktime
은 UTC 시간이 아닌 현지 시간을 전달해야 하므로 지정된 UTC 시간의 타임스탬프를 얻으려면 더 간단한 방법은 다음과 같습니다.
Unix 타임스탬프 시작 시간, 즉
현지 시간으로 변환
물론 더 이해하기 쉬운 방법은 두 가지뿐입니다. 더 자세히 알고 싶으시면 다음 링크를 참고하세요: Python에서 datetime.date를 UTC 타임스탬프로 변환