我开始写
import time
localtime = time.localtime()
print(localtime)
Run Code Online (Sandbox Code Playgroud)
但当地时间给出了九个属性
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)
Run Code Online (Sandbox Code Playgroud)
我想通过将小时:分钟:秒与当地时间进行比较来确定Python中的上午还是下午。请建议
tm_hour=22
Run Code Online (Sandbox Code Playgroud)
这是您感兴趣的字段(a),您只需使用 (例如,对于小时) 即可获取各个字段localtime.tm_hour。
然后您可以使用它来确定现在是一天中的哪个部分,如下所示:
0 - 11 -> am, 12 - 23 -> pm
Run Code Online (Sandbox Code Playgroud)
一个简单的代码是:
import time
mytime = time.localtime()
if mytime.tm_hour < 12:
print ('It is AM')
else:
print ('It is PM')
Run Code Online (Sandbox Code Playgroud)
对于更梦幻的事物(例如白天和黑夜),最简单的解决方案是固定时间,例如:
0 - 5, 19 - 23 -> night, 6 - 18 -> day
Run Code Online (Sandbox Code Playgroud)
完成:
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')
Run Code Online (Sandbox Code Playgroud)
当然,这完全取决于你如何定义白天和黑夜,因为太阳在一年中的不同时间、世界不同地区的不同时间升起和落下,并且在极北和极南纬度的极端情况下,有时一次不会几个月。
(a)从技术上讲,您可能应该使用小时、分钟,甚至可能是秒,因为可以说正午和午夜既不是子午线前也不是子午线后。但我们将在这个问题的背景下采用更简单的解决方案。
示例代码(忽略秒)如下:
import time
mytime = time.localtime()
myhour = mytime.tm_hour
mymin = mytime.tm_min
if myhour == 0 and mymin == 0:
print('It is midnight')
elif myhour < 12:
print ('It is AM')
elif myhour == 12 and mymin == 0:
print('It is noon')
else:
print ('It is PM')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5709 次 |
| 最近记录: |