我有两个想要比较的变量。打印出来后,它们是这样的:
2020-05-20 13:01:30
2020-05-20 14:49:03
Run Code Online (Sandbox Code Playgroud)
但是,一种是字符串类型,另一种是日期时间类型。如果我想将字符串一转换为日期类型以便我可以比较它们,这是唯一使用的方法吗strptime?因为这对我来说似乎有点多余,因为该字符串已经具有我想要的确切格式。基本上,是否有一个功能与 相同strptime,但不重新格式化它?正如您可以想象的那样,谷歌搜索这个问题是不可能的,因为我得到的只是人们试图将任何类型的字符串格式化为日期时间,所以所有答案都只是指向strptime.
如果您使用 Python 3.7+,对于ISO 8601兼容字符串,请使用datetime.fromisoformat(),因为这比strptime或 dateutil 的parser. 前任:
from datetime import datetime
dtobj = datetime.fromisoformat('2020-05-20 13:01:30')
print(repr(dtobj))
# datetime.datetime(2020, 5, 20, 13, 1, 30)
Run Code Online (Sandbox Code Playgroud)
您可以使用parser由dateutil
from dateutil import parser
date_object = parser.parse("2020-05-20 13:01:30")
print(repr(date_object))
# datetime.datetime(2020, 5, 20, 13, 1, 30)
print(type(date_object))
# <class 'datetime.datetime'>
print(date_object)
# 2020-05-20 13:01:30
Run Code Online (Sandbox Code Playgroud)
来自文档:
该模块提供了一个通用的日期/时间字符串解析器,它能够解析大多数已知的格式来表示日期和/或时间。
文档: https: //dateutil.readthedocs.io/en/stable/parser.html
| 归档时间: |
|
| 查看次数: |
14625 次 |
| 最近记录: |