上图的第三列是指从一年的1月1日零时开始计数(几小时数),某月某日某时在这一年里是第几时。另外,上图的一年是按设计中的典型年来计算,所以2月份是按28天计算,不用分是否是闰年。
代码
#需要输入的值
month = 12 #1≤month≤12
day = 1 #1≤day≤31
hour = 0 #24小时制(0~23)
#程序运行并输出结果
sum = 0
d_num = 0
if month >= 1 and month <= 12:
if day >= 1 and day <= 31:
if hour >= 0 and hour <= 23:
for m in range(1,month):
if m in [1, 3, 5, 7, 8, 10, 12]:
d_num += 31
sum += 31 * 24
elif m in [2]:
d_num += 28
sum += 28 * 24
else:
d_num += 30
sum += 30 * 24
d_num += day
sum += (day-1) * 24
sum += hour
print(f'{month}月{day}日是一年里的第{d_num}天')
print(f'{month}月{day}日{hour}时是一年里的第{sum}个小时')
else:
print('小时数值输入错误')
else:
print('天数值输入错误')
else:
print('月份值输入错误')
结果:
12月1日是一年里的第335天
12月1日0时是一年里的第8016个小时