如何打印一天中的小时数

时间:2014-10-08 05:40:08

标签: python loops while-loop

抱歉,如果这是一个重复的问题,但我在这里找不到任何其他问题可以帮助我。如果还有这样的问题,请指导我,谢谢!无论如何,我必须编写一个名为hours的函数。它不需要参数,并打印一天中的小时数(从午夜开始)。除了小时和安培,我不能在我的代码中使用任何变量。

所以输出应该是:

hours()
12 AM
1 AM
2 AM
# ...  some output omitted
10 AM
11 AM
12 PM
1 PM
2 PM
# ...  some output omitted
10 PM
11 PM

这就是我到目前为止所做的:

def hours():
    hour = 12
    ampm = 'AM'
    for count in range(1,13):
        print(count, ampm)

我打印出来了:

1 AM
2 AM
3 AM
4 AM
5 AM
6 AM
7 AM
8 AM
9 AM
10 AM
11 AM
12 AM

但这是错误的:|任何帮助都会非常感谢你!

2 个答案:

答案 0 :(得分:4)

由于这看起来像是家庭作业,我只是给出提示。首先,由于你需要打印24个不同的小时,你的for循环中的12次迭代不会削减它;你需要二十四次迭代。

接下来,只需自己解决上午时间问题。如果您从零开始count,请注意它始终设置为您要打印的小时(例如,当count等于3时,时间是凌晨3点),除外当计数等于零时。在那种情况下,时间是上午12点。模数运算符是解决此问题所需的。

一旦你有AM工作时间,添加PM小时应该是相当微不足道的。快乐的编码!

答案 1 :(得分:-2)

def hours():

for hour in range(0,13):
  if( hour < 12 ):
    print ( hour,  ' AM ')
  else : 
    print ((hour-12),  ' PM ')