如何更改词典列表中的日期时间格式



我有一个字典列表,如下所示,

[{'Name':'Henry','Start Date': datetime.datetime(2018, 12, 5, 0, 0),'End Date': datetime.datetime(2020, 4, 10, 0, 0)},
{'Name':'Zack','Start Date': datetime.datetime(2018, 12, 5, 0, 0), 'End Date': datetime.datetime(2018, 12, 7, 0, 0)},
{'Name':'Stuart','Start Date': datetime.datetime(2018, 12, 5, 0, 0),'End Date': datetime.datetime(2020, 4, 10, 0, 0)}]

如何将我的日期格式转换为给定的输出?

[{'Name':'Henry','Start Date': '05-12-2018  12:00:00 AM','End Date': '10-04-2020  12:00:00 AM'},
{'Name':'Zack','Start Date': '05-12-2018  12:00:00 AM','End Date': '07-12-2018  12:00:00 AM',
{'Name':'Stuart','Start Date': '05-12-2018  12:00:00 AM','End Date': '10-04-2020  12:00:00 AM'}]

这是一个测试数据的原始数据有更多的记录。此记录是动态的,因此需要一个通用的解决方案。日期时间键没有必要每次都有相同的名称。

您可以使用strftimedatetime转换为您想要的格式(%d-%m-%Y %I:%M:%S %p(。

import datetime
dates = [{'Name':'Henry','Start Date': datetime.datetime(2018, 12, 5, 0, 0),'End Date': datetime.datetime(2020, 4, 10, 0, 0)},
{'Name':'Zack','Start Date': datetime.datetime(2018, 12, 5, 0, 0), 'End Date': datetime.datetime(2018, 12, 7, 0, 0)},
{'Name':'Stuart','Start Date': datetime.datetime(2018, 12, 5, 0, 0),'End Date': datetime.datetime(2020, 4, 10, 0, 0)}]

for date in dates:
start_date = str(datetime.datetime.strftime(date["Start Date"], "%d-%m-%Y %I:%M:%S %p"))
end_date = str(datetime.datetime.strftime(date["End Date"], "%d-%m-%Y %I:%M:%S %p"))
date["Start Date"] = start_date
date["End Date"] = end_date

print(dates)

输出:

[{'Name': 'Henry', 'Start Date': '05-12-2018 12:00:00 AM', 'End Date': '10-04-2020 12:00:00 AM'}, {'Name': 'Zack', 'Start Date': '05-12-2018 12:00:00 AM', 'End Date': '07-12-2018 12:00:00 AM'}, {'Name': 'Stuart', 'Start Date': '05-12-2018 12:00:00 AM', 'End Date': '10-04-2020 12:00:00 AM'}]

''从日期时间导入日期时间

((日期时间(2018,12,5,0,0((.strftime("%d-%m-%Y%I:%m:%S%p"(''

使用此格式

相关内容

  • 没有找到相关文章

最新更新