我需要做一个简单的程序,把输入的24小时时间转换成12小时的时间,如果输入的时间不正确,就会产生错误。我现在有下面的代码,但是,我有一些问题。一个问题是,如果“0924”是输入,它输出“924am”,当我需要它来产生“9:24am”(这个空间不是很重要,但它是首选)。另外,我也不完全确定从哪里开始做0001-0059,因为“0001”会产生“1am”,这显然是不正确的。在
print("Enter a time in 24 hour time, e.g. '1620'")
time = (int(input("Time: ")))
normal = 0
if (time == 0000):
normal="12:00am"
print (normal)
elif (time>1200):
normal = (time - 1200)
print (int(normal), ("pm"))
elif (time<1200):
normal = time
print (int(normal), ("am"))
提前感谢您的帮助!在
打印时,normal只是一个数字。0会消失,因为你通常不会在数字前面写0。我建议做这样的事
最好的方法是将输入作为str而不是int。将其作为str接受,并将其拆分为两个两位数的int值。 然后第一个字符串如果小于12将是hour else从第一个str减去12并使用PM。另外,第二个str将是几分钟。在
试试这个
将输入作为字符串。将其分配给
timevalue_24hour
,剩下的就可以工作了相关问题 更多 >
编程相关推荐