Python 如何将字符串转换为日期时间格式?
如何将字符串转换为指定的日期时间格式?例如:Python 如何将字符串转换为日期时间格式?,python,Python,如何将字符串转换为指定的日期时间格式?例如: str = 'Wed Mar 16 16:12:05 2016 +0800' 如何将其转换为:2016-03-16 16:12:05?您可以使用strtime执行此操作: import datetime myDatetime=datetime.datetime.strptime(My_string, format) 格式为%Y-%m-%d%H:%m:%S“表示年-月-日、时-分-秒,因此在您的情况下,它将是“日、月、日等的名称…”箭头是以非
str = 'Wed Mar 16 16:12:05 2016 +0800'
如何将其转换为:
2016-03-16 16:12:05
?您可以使用strtime执行此操作:
import datetime
myDatetime=datetime.datetime.strptime(My_string, format)
格式为
%Y-%m-%d%H:%m:%S“
表示年-月-日、时-分-秒,因此在您的情况下,它将是“日、月、日等的名称…”箭头是以非常直接的方式执行此操作的一个很好的模块:
我更喜欢datetime,因为它更简洁
对于您的具体示例:
import arrow
date_str = 'Wed Mar 16 16:12:05 2016 +0800'
date = arrow.get(date_str,'ddd MMM D HH:mm:SS YYYY Z')
print date
2016-03-16T16:12:00.050000+08:00
>>>
另外,给字符串命名是个坏主意
str
由于这是采取,为字符串类型
为什么是箭?我相信它有一个比datetime更好的api:
>>> date.humanize()
3: u'2 days ago'
>>> date.resolution
4: datetime.timedelta(0, 0, 1)
>>> date.datetime
5: datetime.datetime(2016, 3, 16, 16, 12, 0, 50000, tzinfo=tzoffset(None, 28800))
>>> date.utctimetuple()
7: time.struct_time(tm_year=2016, tm_mon=3, tm_mday=16, tm_hour=8, tm_min=12, tm_sec=0, tm_wday=2, tm_yday=76, tm_isdst=0)
>>>
使用
datetime
库通过**strtime()**
将datetime字符串转换为datetime对象,并通过**strftime()**
将datetime对象转换为datetime字符串
格式模式:
>>> from datetime import datetime
>>> result_date = datetime.strptime('Wed Mar 16 16:12:05 2016', '%a %b %d %H:%M:%S %Y')
>>> result_date
datetime.datetime(2016, 3, 16, 16, 12, 5)
>>> result_date.strftime("%Y-%m-%d %H:%M:%S")
'2016-03-16 16:12:05'
注意:
srt
什么是
+0800
?谢谢大家,我使用了strtime+strftime,它也可以工作,不管谁否决了这个,请解释一下原因?这就是原因,为什么我喜欢写评论而不是回答哇,我不明白评论有人,他们会毫无理由地否决你的答案啊,我现在明白了。我喜欢回答,分享知识,让那些无缘无故否决投票的人失望。是的,我参考了手册,它可以工作,非常感谢所有善良的人们的帮助:)