Python의 time.time()은 로컬 타임스탬프 또는 UTC 타임스탬프를 반환합니까?
time.time()
UTC에 의한 것입니다.
함수는 에폭 이후의 초수를 플로트로 반환합니다."에폭"은 UTC에서 1970년 1월 1일의 시작으로 정의됩니다.따라서 이 에폭은 UTC로 정의되며 전지구적 시점을 설정합니다.지구상의 어디에 있든 '세컨드 패스 에폭(seconds past epoch)'이다.time.time()
는 같은 는 같은 순간에 같은 값을 반환합니다.
다음은 컴퓨터에서 실행한 샘플 출력입니다. 문자열로도 변환합니다.
>>> import time
>>> ts = time.time()
>>> ts
1355563265.81
>>> import datetime
>>> datetime.datetime.fromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
'2012-12-15 01:21:05'
>>>
ts
초 단위로 입니다., 사람이 수 있는 했습니다.datetime
★★★★★★★★★★★★★★★★★★.
이는 텍스트 파일에서 사용할 수 있는 타임스탬프의 텍스트 형식을 위한 것입니다.(과거에는 질문의 제목이 달랐기 때문에, 이 답변의 서론을 변경해, 어떻게 해석할 수 있는지를 명확하게 했습니다.[2016-01-14]
는, 「」를 할 수 ..now()
★★★★★★★★★★★★★★★★★」.utcnow()
datetime.datetime
:
>>> import datetime
>>> print datetime.datetime.utcnow()
2012-12-15 10:14:51.898000
now
utcnow
예상대로 --그렇지 않으면, 같은 방법으로 동작합니다.
>>> print datetime.datetime.now()
2012-12-15 11:15:09.205000
타임스탬프를 명시적으로 문자열에 렌더링할 수 있습니다.
>>> str(datetime.datetime.now())
'2012-12-15 11:15:24.984000'
또는 타임스탬프 형식을 원하는 대로 지정할 수도 있습니다.
>>> datetime.datetime.now().strftime("%A, %d. %B %Y %I:%M%p")
'Saturday, 15. December 2012 11:19AM'
형식을 사용하는 는, ISO 「」를 합니다..isoformat()
오젝트 젝서오 :
>>> datetime.datetime.now().isoformat()
'2013-11-18T08:18:31.809000'
이러한 값을 변환 없이 계산 및 인쇄에 사용할 수 있습니다.
>>> ts = datetime.datetime.now()
>>> tf = datetime.datetime.now()
>>> te = tf - ts
>>> print ts
2015-04-21 12:02:19.209915
>>> print tf
2015-04-21 12:02:30.449895
>>> print te
0:00:11.239980
#squiguy의 답변을 바탕으로 정확한 타임스탬프를 얻기 위해 float에서 캐스팅합니다.
>>> import time
>>> ts = int(time.time())
>>> print(ts)
1389177318
적어도 그게 컨셉이야.
답은 둘 중 하나일 수도 있고 둘 다일 수도 있다.
다: 둘:::
time.time()
Epoch 이후 경과한 대략적인 초수를 반환합니다.결과는 시간대에 따라 달라지지 않기 때문에 UTC도 아니고 현지시간도 아닙니다.다음은 "에폭 이후 세컨드"에 대한 POSIX 정의입니다.다: 둘 : : :
time.time()
는 시스템 클럭을 동기화할 필요가 없기 때문에 값을 반영합니다(단, 로컬타임존과는 무관합니다).컴퓨터마다 동시에 다른 결과를 얻을 수 있습니다.한편, 컴퓨터의 시각이 동기하고 있는 경우는, 타임 스탬프로부터 UTC 시각을 간단하게 취득할 수 있습니다(윤초를 무시하면).from datetime import datetime utc_dt = datetime.utcfromtimestamp(timestamp)
다양한 Python 버전에서 UTC 시간에서 타임스탬프를 가져오는 방법은 UTC에 따라 epoch 이후 초로 변환된 날짜를 얻는 방법을 참조하십시오.
datetime 라이브러리를 사용하여 로컬 타임스탬프를 가져오려면 Python 3.x
#wanted format: year-month-day hour:minute:seconds
from datetime import datetime
# get time now
dt = datetime.now()
# format it to a string
timeStamp = dt.strftime('%Y-%m-%d %H:%M:%S')
# print it to screen
print(timeStamp)
나는 결국 다음과 같이 결정했다.
>>> import time
>>> time.mktime(time.gmtime())
1509467455.0
특정 시간대에는 "에폭"과 같은 것은 없습니다.에폭은 특정 시점으로 잘 정의되어 있기 때문에 시간대를 변경하면 시간 자체도 변경됩니다.구체적으로는 이번에는Jan 1 1970 00:00:00 UTC
.그렇게time.time()
에폭 이후의 초수를 반환합니다.
timestamp는 항상 utc 단위의 시간입니다만,datetime.datetime.fromtimestamp
이 타임스탬프에 대응하는 로컬타임존의 시간을 반환하기 때문에 결과는 로케일에 따라 달라집니다.
>>> import time, datetime
>>> time.time()
1564494136.0434234
>>> datetime.datetime.now()
datetime.datetime(2019, 7, 30, 16, 42, 3, 899179)
>>> datetime.datetime.fromtimestamp(time.time())
datetime.datetime(2019, 7, 30, 16, 43, 12, 4610)
멋진 도서관이 있다.arrow
다른 행동을 보이는군요같은 경우 UTC 시간대를 포함한 시간 객체를 반환합니다.
>>> import arrow
>>> arrow.now()
<Arrow [2019-07-30T16:43:27.868760+03:00]>
>>> arrow.get(time.time())
<Arrow [2019-07-30T13:43:56.565342+00:00]>
time.time()
unix 타임스탬프를 반환합니다.사용할 수 있다datetime
로컬 시간 또는 UTC 시간을 가져옵니다.
import datetime
local_time = datetime.datetime.now()
print(local_time.strftime('%Y%m%d %H%M%S'))
utc_time = datetime.datetime.utcnow()
print(utc_time.strftime('%Y%m%d %H%M%S'))
언급URL : https://stackoverflow.com/questions/13890935/does-pythons-time-time-return-the-local-or-utc-timestamp
'programing' 카테고리의 다른 글
Vue 구성 요소가 다른 구성 요소를 확장하는지 확인합니다. (0) | 2023.01.19 |
---|---|
지시어를 정의할 때 '컨트롤러', '링크' 및 '컴파일' 함수의 차이 (0) | 2023.01.19 |
Mysql 암호가 만료되었습니다.접속할 수 없다 (0) | 2023.01.19 |
JSON에서의 Http 415 Unsupported Media type 오류 (0) | 2023.01.19 |
평신도 용어로 "static"은 Java에서 무엇을 의미합니까? (0) | 2023.01.19 |