我有以下问题:
我有一个日期字符串列表:
dates = ['11-07-05',
'11-07-01',
'11-07-03',
'11-07-04', etc]
我想将它们转换为日期格式,我使用了以下代码:
from datetime import datetime as dt
dateFormat = [dt.strptime(item[1],"%y-%m-%d").date() for item in dates
这应该以以下格式输出一个新列表:
dateFormat = [2011-7-5,
2011-7-1,
2011-7-3,
2011-7-4]
但输出结果是:
dateFormat = [datetime.date(2011-7-5),
datetime.date(2011-7-1),
datetime.date(2011-7-3),
datetime.date(2011-7-4)]
我的问题是:如何在没有“datetime.date”的情况下将日期字符串格式化为日期格式?
最佳答案
您想要使用 datetime.strptime 将字符串转换为日期时间然后使用 datetime.strftime 将日期时间转换回字符串
from datetime import datetime as dt
dates = ['11-07-05', '11-07-01', '11-07-03', '11-07-04']
# Iterate through the dates
# Convert string to datetime using strptime
# and then convert the datetime back to string using strftime
dateFormat = [dt.strptime(item,"%y-%m-%d").date().strftime('%Y-%m-%d') for item in dates]
print(dateFormat)
输出将是
['2011-07-05', '2011-07-01', '2011-07-03', '2011-07-04']
关于python - 循环遍历日期字符串列表 : strptime outputs "Datetime.date(2011-7-5)" instead of (2011-7-5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56125865/