developer tip

현재 날짜를 epoch 타임 스탬프로 변환하는 방법은 무엇입니까?

copycodes 2020. 12. 15. 19:28
반응형

현재 날짜를 epoch 타임 스탬프로 변환하는 방법은 무엇입니까?


현재 날짜를 epoch 타임 스탬프로 변환하는 방법은 무엇입니까?

현재 날짜 형식 :

29.08.2011 11:05:02

그렇게해야합니다

import time

date_time = '29.08.2011 11:05:02'
pattern = '%d.%m.%Y %H:%M:%S'
epoch = int(time.mktime(time.strptime(date_time, pattern)))
print epoch

'UTC'또는 'Asia / Kolkata'와 같이 'TZ'가 제대로 설정되지 않은 경우 코드가 이상하게 작동합니다.

따라서 아래에서 수행해야합니다.

>>> import time, os
>>> d='2014-12-11 00:00:00'
>>> p='%Y-%m-%d %H:%M:%S'
>>> epoch = int(time.mktime(time.strptime(d,p)))
>>> epoch
1418236200
>>> os.environ['TZ']='UTC'
>>> epoch = int(time.mktime(time.strptime(d,p)))
>>> epoch
1418256000

24 시간 형식을 사용한다고 가정합니다.

import time;
t = time.mktime(time.strptime("29.08.2011 11:05:02", "%d.%m.%Y %H:%M:%S"));

import time
def expires():
    '''return a UNIX style timestamp representing 5 minutes from now'''
    return int(time.time()+300)

strptime사용 하여 시간을 구문 분석하고 time ()호출 하여 Unix 타임 스탬프를 가져옵니다.


UTC를 원한다면 일부 gm기능을 시도하십시오 .

import time
import calendar

date_time = '29.08.2011 11:05:02'
pattern = '%d.%m.%Y %H:%M:%S'
utc_epoch = calendar.timegm(time.strptime(date_time, pattern))
print utc_epoch

from time import time
>>> int(time())
1542449530


>>> time()
1542449527.6991141
>>> int(time())
1542449530
>>> str(time()).replace(".","")
'154244967282'

하지만 돌아 오지 않아야합니까?

'15424495276991141'

enter image description here이 답변에는 업데이트가 필요하며 솔루션은 이런 식으로 더 나아질 것이라고 생각합니다.

from datetime import datetime

datetime.strptime("29.08.2011 11:05:02", "%d.%m.%Y %H:%M:%S").strftime("%s")

또는 datetime 객체를 사용하고 % s를 사용하여 시간을 형식화하여 epoch 시간으로 변환 할 수 있습니다.

참조 URL : https://stackoverflow.com/questions/7241170/how-to-convert-current-date-to-epoch-timestamp

반응형