2016-01-11 2 views
1

Временная строка: 'Thu Nov 26 17:49:28 +0000 2015'.Как преобразовать время в метку времени?

Необходимо преобразовать его в метку времени UTC, попробовал несколько методов, найденных в Интернете, но не работает.

Каков правильный способ его преобразования? Спасибо.

+0

Pos sib duplicate [Строка времени Parsing в Python] (http://stackoverflow.com/questions/10494312/parsing-time-string-in-python) – donkopotamus

ответ

0

Использование datetime.datetime.strptime() с соответствующим спецификатор формата, а затем использовать timestamp() метод:

>>> import datetime 
>>> d = 'Thu Nov 26 17:49:28 +0000 2015' 
>>> datetime.datetime.strptime(d, '%a %b %d %H:%M:%S %z %Y').timestamp() 
1448560168.0 
+0

Вау, так просто! Благодаря! – S1U

0

Чтобы получить "секунд с начала эпохи" из rfc 5322 date-time string (например, в электронной почте Date заголовка):

>>> from email.utils import parsedate_tz, mktime_tz 
>>> mktime_tz(parsedate_tz('Thu Nov 26 17:49:28 +0000 2015')) 
1448560168 
0

Если вам нравится Pandas, это очень просто

In [32]: import pandas as pd 
# Construct date time index 
In [33]: dt_index = pd.DatetimeIndex(['Thu Nov 26 17:49:28 +0000 2015']) 
# Get the epoch timestamp in seconds 
In [35]: dt_index.astype('int64')/1e9 
Out[35]: array([ 1.44856017e+09]) 

In [36]: dt_index.astype('int64')[0]/1e9 
Out[36]: 1448560168.0