将'Nov 11, 2017 5:19:38 AM PST'转换为 YYYY-MM-DD HH:MM[:SS[.UUUUUUUU]][TZ] 格式



我正在尝试在获得此错误后尝试转换这种复杂的日期时间格式:

[u"'Nov 11, 2017 5:19:38 AM PST' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format."]

我正在构建此功能,但我不确定如何处理这个月份。这是CSV文件中的日期的一个示例:2017年11月1日12:00:13 AM PDT

我没有任何运气:

def process_datetime(self,dt):
    d_time = datetime.strptime(dt, '')
    return datetime.strftime(d_time, 'YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]')

尝试以下代码,信用转到此答案(https://stackoverflow.com/a/26435566/6039974)

from datetime import datetime, timedelta
from email.utils import parsedate_tz, mktime_tz
given_date = "Nov 1, 2017 12:00:13 AM PDT";
timestamp = mktime_tz(parsedate_tz(given_date))
utc_dt = datetime(1970, 1, 1) + timedelta(seconds=timestamp)
print(utc_dt)

打印

2017-11-01 12:00:13

最新更新