使用python中的time()模块查找白天还是黑夜

时间:2018-08-01 03:37:49

标签: python time

我开始写

import time
localtime = time.localtime()
print(localtime)

但是本地时间具有9个属性

time.struct_time(tm_year=2018, tm_mon=7, tm_mday=31, tm_hour=22, 
                 tm_min=32, tm_sec=41, tm_wday=1, tm_yday=212, tm_isdst=1)

我想通过将Hours:min:sec与本地时间进行比较来查找python中的am或pm。请建议

1 个答案:

答案 0 :(得分:3)

tm_hour=22

是您对(a)感兴趣的字段,您可以通过使用(例如,按小时){{ 1}}。

然后您可以使用它来确定一天中的哪个时段,如下所示:

localtime.tm_hour

一个简单的代码是:

0 - 11 -> am, 12 - 23 -> pm

对于更加通俗易懂的事物(例如白天和黑夜),最简单的解决方案是固定时间,例如:

import time
mytime = time.localtime()
if mytime.tm_hour < 12:
    print ('It is AM')
else:
    print ('It is PM')

完成于:

0 - 5, 19 - 23 -> night, 6 - 18 -> day

当然,这完全取决于您如何在白天和黑夜定义 ,因为太阳升起并落在世界上不同地区的时间在一年中的不同时间,在极端情况下,偏北纬度和南纬度,有时一次都不是几个月。


(a)从技术上讲,您可能应该使用小时,分钟甚至可能是秒,因为可以说午夜和午夜都不是子午线也不是子午线。但是在这个问题的背景下,我们将采用更简单的解决方案。

忽略秒的示例代码如下:

import time
mytime = time.localtime()
if mytime.tm_hour < 6 or mytime.tm_hour > 18:
    print ('It is night-time')
else:
    print ('It is day-time')