您好我想检查我的数据集中的时间A
是晚上还是白天
import datetime
A
datetime.datetime(2011, 4, 12, 12, 39, 58)
if A < datetime.time(19):
print 'day'
else:
print 'night'
但我收到以下错误,我不明白为什么
TypeError: descriptor 'time' requires a 'datetime.datetime' object but received a 'int'
答案 0 :(得分:2)
def get_cycle(dt):
return "day" if 6 <= dt.hour < 19 else "night"
这会将日期定义为早上6点到晚上7点之间的白天
如果你想要更多的灵活性
def get_cycle(dt):
day_start = datetime.time(6,35) # day starts at 6:35am
day_end = datetime.time(17,45) #day ends at 5:45pm
return "day" if day_start <= dt.time() < day_end else "night"
答案 1 :(得分:1)
if A.hour < 19:
print 'day'
else:
print 'night'
但这最终会计算24小时中的19小时为白天,这似乎不正确。