有没有办法自动解析带有时间的字符串到 datetime.time
对象(或类似的东西)? datetime.date
相同。
我已经尝试过dateutil , arrow , moment , pandas.to_datetime 。 所有这些解析器都会创建带有当前日期的时间戳。
>>> from dateutil.parser import parse
>>> parse('23:53')
datetime.datetime(2019, 1, 8, 23, 53) # datetime.time(23, 53) expected
>>> parse('2018-01-04')
datetime.datetime(2018, 1, 4, 0, 0) # datetime.date(2018, 1, 4) expected
更新:
感谢您的回复。认为我应该澄清这个问题。
程序不知道输入中的内容(时间戳
、日期
或时间
),它应该决定设置合适的类型。问题是区分这些类型。
例如,我可以解析 23:53
并获取时间戳。我如何决定是否从中提取时间?
最佳答案
您可以使用fromisoformat()
来自日期时间
。
import datetime
datetime.time.fromisoformat('23:53')
datetime.date.fromisoformat('2018-01-04')
关于python - 如何解析没有日期的时间字符串和没有时间的日期字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54089071/