Python 转换仅限时间的字符串,例如;下午6时02分;到datetime对象?

Python 转换仅限时间的字符串,例如;下午6时02分;到datetime对象?,python,datetime,Python,Datetime,我有一个在%I:%M%p(例如“6:02PM”)中给出的输入。 我试图输入这段代码,以找出现在和那时的区别: import datetime now = datetime.now() then = "6:02PM" tdelta = now - then 这个手术做了多少次?如果不在短时间内数万次(或更多),不要担心“最有效的方式”,而是关注“干净整洁的代码”。并从文章标题中删除此类语言(因为它是模糊的和/或误导性的和/或不需要的)。非常感谢。我假设“将x作为y导入”意味

我有一个在%I:%M%p(例如“6:02PM”)中给出的输入。 我试图输入这段代码,以找出现在和那时的区别:

import datetime

now = datetime.now()
then = "6:02PM"
tdelta = now - then

这个手术做了多少次?如果不在短时间内数万次(或更多),不要担心“最有效的方式”,而是关注“干净整洁的代码”。并从文章标题中删除此类语言(因为它是模糊的和/或误导性的和/或不需要的)。非常感谢。我假设“将x作为y导入”意味着您可以在脚本中将其作为dt引用。那么为什么需要dt.datetime呢?这不是多余的吗?或者它与datetime也有一个名为datetime的内部函数的奇怪警告有关吗?是的,
datetime
是一个模块的名称,在该模块中有一个类,也称为
datetime
。由于我将模块作为
dt
导入,因此该类被引用为
dt.datetime
import datetime as dt

now = dt.datetime.now()
then = dt.datetime.combine(now, dt.datetime.strptime("6:02PM", "%I:%M%p").time())
print(then)
# 2012-08-26 18:02:00

tdelta = now - then
print(tdelta)
# -1 day, 20:53:25.190721