我有类似Fri Aug 03 15:16:37 +0000 2012
的内容,我希望将其转换为03-08-2012
。
我也有一些日期作为Unix时间戳,如1344006622
,这里我只是这样做:
datetime.datetime.fromtimestamp(1344006622).strftime('%d-%m-%Y')
但这仅适用于Unix时间戳。我怎样才能转换第一个?
答案 0 :(得分:6)
dateutil
据我所知,Python 2仅为时区名称提供%Z
(大写字母Z),但您有偏移({{1 }}),但是有一个名为dateutil的库可以帮助你:
+0000
在上面的例子中,我使用Python 2.7.9和dateutil 2.4.2 您可以使用
检查您的版本>>> import dateutil
>>> import dateutil.parser
>>> dateutil.parser.parse('Fri Aug 03 15:16:37 +0000 2012')
datetime.datetime(2012, 8, 3, 15, 16, 37, tzinfo=tzutc())
您可以使用>>> dateutil.__version__
'2.4.2'
安装,或者如果要指定版本pip install python-dateutil
从Python 3.2开始,有pip install python-dateutil==2.4.2
解析%z
时区信息:
+0000
有关所用参数的说明,请参阅this table