我有一个语法和一个语法测试代码,但是当我插入测试代码时它不会运行

2024-06-28 20:07:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我有语法和语法的测试代码,但插入测试代码时它不会运行

测试代码:

hour,minute,second=Timeconversion(second)
print(hour, "hour", minute, "Minute",second,"second")

测试输入10500。 结果2小时55分0秒

这是我的代码:

def Timeconversion(second):
    #lengkapi fungsi berikut
    hour=int(second//3600)
    minute=int((second%3600)//60)
    second=int((second%3600)%60)
    hour, minute, second = Timeconversion(second)

second=int(input()) 
print (hour, "hour", minute, "minute", second, "second")

它总是出错:

Traceback (most recent call last):
  File "C:\Users\ASUS\Desktop\No 4.py", line 9, in <module>
    print (hour, "hour", minute, "minute", second, "second")
NameError: name 'hour' is not defined

Tags: 代码def语法intprintsecond小时测试代码
2条回答

这很有效。没有递归,您正在解包适当的时间段

test = 10500
def Timeconversion(second):
    #lengkapi fungsi berikut
    hour=int(second//3600)
    minute=int((second%3600)//60)
    second=int((second%3600)%60)
    return hour, minute, second


hour,minute,second=Timeconversion(test)
print(hour, "hour", minute, "Minute",second,"second")

您的代码将使用以下更改:

  1. 为函数添加返回语句
  2. 删除递归调用
  3. 打印前调用hour,minute,second=Timeconversion(second)
def Timeconversion(second):
    #lengkapi fungsi berikut
    hour=int(second//3600)
    minute=int((second%3600)//60)
    second=int((second%3600)%60)
    return hour,minute,second

second=int(input()) 
hour,minute,second=Timeconversion(second)
print (hour, "hour", minute, "minute", second, "second")

相关问题 更多 >