在Python中表示不含日期的时间结构
在Python中,有没有一种数据结构可以只表示小时、分钟和秒,而不包含其他信息?如果没有,那在我的情况下,使用什么结构比较好呢?
2 个回答
9
datetime
模块提供了几种类型来表示日期和时间,其中datetime.time()
对象可能正好符合你的需求:
from datetime import time
afternoon_tea = time(16, 30)
如果你想表示持续时间,可以使用datetime.timedelta()
对象;这些对象可以用来调整datetime.date()
或datetime.datetime()
对象:
from datetime import timedelta
halfday = timedelta(hours=12)
你也可以简单地用一个整数来表示时间,这个整数代表秒数:
onehour = 60
这一切都取决于你的具体使用场景,但很遗憾你在问题中没有提到这些。
3
为什么不直接使用 datetime
模块及其相关功能呢:
from datetime import datetime
my_time = '05:43:34'
my_time = datetime.strptime('%H:%M:%S', my_time)
这样你就可以简单地做一些事情,比如:
>>> my_time.hour
5
>>> my_time.minute
43
>>> my_time.second
34