[英]How to change a datetime format in python?
如何从 06-09-202015u59m04s 中制作2020/09/06 15:59:04
06-09-202015u59m04s
这是我的代码:
my_time = '06-09-202014u59m04s'
date_object = datetime.datetime.strptime(my_time, '%d-%m-%YT%H:%M:%S')
print(date_object)
这是我收到的错误:
ValueError: time data '06-09-202014u59m04s' does not match format '%d-%m-%YT%H:%M:%S'
>>> from datetime import datetime
>>> my_time = '06-09-202014u59m04s'
>>> dt_obj = datetime.strptime(my_time,'%d-%m-%Y%Hu%Mm%Ss')
现在您需要进行一些格式更改才能获得答案,因为 datetime 对象始终使用:
打印自己,因此您可以执行以下任何一项操作:
使用strftime
获取新格式:
>>> dt_obj.strftime('%Y/%m/%d %H:%M:%S')
'2020/09/06 14:59:04'
或者您可以通过将 datetime 对象转换为str
来简单地使用.replace()
:
>>> str(dt_obj).replace('-','/')
'2020/09/06 14:59:04'
正如您的错误所说,您提供的内容与格式不匹配 - %d-%m-%YT%H:%M:%S
- 表示您期待年后:字母 T hour
: minutes
: seconds
,例如显示它是hour
u minutes
m seconds
s 没有 T,所以你应该这样做:
import datetime
my_time = '06-09-202014u59m04s'
date_object = datetime.datetime.strptime(my_time, '%d-%m-%Y%Hu%Mm%Ss')
print(date_object)
输出:
2020-09-06 14:59:04
您需要始终确保所需的日期格式与您所需的格式相匹配。
from datetime import datetime
date_object = datetime.strptime("06-09-202015u59m04s", '%d-%m-%Y%Hu%Mm%Ss')
print(date_object.strftime('%Y/%m/%d %H:%M:%S'))
输出
2020/09/06 15:59:04
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.