Python将字符串类型转换为日期时间类型

2024-09-27 19:18:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个变量要比较。打印时,它们的外观如下所示:

2020-05-20 13:01:30
2020-05-20 14:49:03

但是,一个是字符串类型,另一个是日期时间类型。 如果我想将字符串1转换为datetype以便比较它们,那么使用strptime的唯一方法是什么?因为这对我来说似乎有点多余,因为字符串已经有了我想要的格式。基本上,是否存在一个与struptime相同但不重新格式化的函数?你可以想象,用谷歌搜索这个问题是不可能的,因为我得到的只是人们试图将任何类型的字符串格式化为datetime,所以所有的答案都指向strptime


Tags: 方法函数字符串答案类型datetime格式时间
2条回答

如果使用Python3.7+,对于ISO 8601兼容的字符串,请使用^{},因为这比strptime()更有效。例:

from datetime import datetime
dtobj = datetime.fromisoformat('2020-05-20 13:01:30')
print(repr(dtobj))
# datetime.datetime(2020, 5, 20, 13, 1, 30)

您可以找到一个小的基准与strptime(){a3}

您可以使用dateutil提供的parser

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

从文档中:

This module offers a generic date/time string parser which is able to parse most known formats to represent a date and/or time.

文件:https://dateutil.readthedocs.io/en/stable/parser.html

相关问题 更多 >

    热门问题