我打算转换
stringtime = '2020-02-30 10:27:00+01:00'
以便我可以将其与
进行比较nowtime = datetime.datetime.utcnow()
使用
if nowtime > stringtime:
print(1)
我尝试了strptime
:
datetime.datetime.strptime(stringtime, '%Y-%m-%d %H:%M:%S')
但是在strptime文档中找不到时区的格式规范。
我也尝试过
pandas.Timestamp(stringtime)
但是我得到ValueError: could not convert string to Timestamp
。
这怎么办?
答案 0 :(得分:2)
datetime.datetime.strptime(stringtime, '%Y-%m-%d %H:%M:%S%z')
将为您提供预期的结果%z
是格式(仅适用于Python3),但是您的原始日期无效,因为二月没有30天:)
答案 1 :(得分:1)
首先:您的stringtime
错误,不存在2月30日。 ;)
您可以使用dateutil
来实现自己的目标:
import dateutil.parser
stringtime = '2020-03-30 10:27:00+01:00'
dateutil.parser.isoparse(stringtime)
# datetime.datetime(2020, 3, 30, 10, 27, tzinfo=tzoffset(None, 3600))