Kri*_*ran 3 python datetime strptime
我有一个字符串,其中包含此格式的日期:
full_date = "May.02.1982"
我想使用datetime.strptime()以所有数字显示日期,如:"1982-05-02"
这是我试过的:
full_date1 = datetime.strptime(full_date, "%Y-%m-%d")
Run Code Online (Sandbox Code Playgroud)
当我尝试打印这个时,我会得到垃圾值,比如built-in-67732
我哪里出错?strptime()方法不接受字符串值吗?
你的格式字符串是错误的,它应该是这样的:
In [65]:
full_date = "May.02.1982"
import datetime as dt
dt.datetime.strptime(full_date, '%b.%d.%Y')
Out[65]:
datetime.datetime(1982, 5, 2, 0, 0)
Run Code Online (Sandbox Code Playgroud)
然后,您需要调用strftimedatetime对象以获取所需的字符串格式:
In [67]:
dt.datetime.strptime(full_date, '%b.%d.%Y').strftime('%Y-%m-%d')
Out[67]:
'1982-05-02'
Run Code Online (Sandbox Code Playgroud)
strptime 用于从字符串创建日期时间格式,而不是将字符串重新格式化为另一个日期时间字符串.
因此,您需要使用创建日期时间对象strptime,然后调用strftime以从datetime对象创建字符串.
日期时间格式字符串可以在找到的文档以及的解释strptime和strftime
| 归档时间: |
|
| 查看次数: |
2694 次 |
| 最近记录: |