gpt4 book ai didi

Python strftime 德语日期字符串

转载 作者:行者123 更新时间:2023-12-01 02:48:49 26 4
gpt4 key购买 nike

我正在尝试更新一些 csv 文件,稍后再更新我的数据库。看来每个月的 strftime 都会混淆一天。我在德国,我们写的是日期 DD/MM/YYYY 而不是 MM/DD/YYYY

如何从 germanString 中创建 datetime 对象,它实际上已经是我需要的格式,但我无法将 str 与 datetime 对象进行比较。如果我省略 strftime 并使其简单地 parse(germanString) ,它将完全以 YYYY-DD-MM 开头混合日期。

from dateutil.parser import parse

lastTimeUpdated = time.ctime(os.path.getctime('myPath/myFile.csv'))
lastTimeUpdated = parse(lastTimeUpdated).strftime('%d.%m.%Y, %H:%M')

print(lastTimeUpdated)
# 09.07.2017, 16:00

print(germanTimeString)
# 05.07.2017, 14:00 <---- is a String so far

HereIsTheProblemDate = parse(germanTimeString).strftime('%d.%m.%Y, %H:%M')

print(HereIsTheProblemDate)
# 07.05.2017, 14:00 <---- Mix up Day and Month

if HereIsTheProblemDate > lastTimeUpdate:
doAnything() #<--- obiously doesnt arrive here

我必须做什么?以便将 Germanstring 转换为日期时间对象而不更改其值?

最佳答案

您不应将 getctime() 返回的时间值转换为字符串,而应直接将其转换为 datatime 对象。这可以使用 datetime.fromtimestamp() 来完成如下:

from datetime import datetime

last_time_updated = datetime.fromtimestamp(os.path.getctime('myfile.csv'))
print(last_time_updated.strftime('%d.%m.%Y, %H:%M'))

然后您可以将其与另一个 datetime 对象正确地进行比较。通过避免使用字符串表示,您不必考虑如何解析日期。

关于Python strftime 德语日期字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45014845/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com