2 回答
TA贡献1883条经验 获得超3个赞
您可以删除 mult() 函数定义,因为它似乎不是特别重要(如果重要请纠正我)。
您的代码将如下所示:
import time
while True:
num = input("Enter number: ")
try:
for i in range(1, int(num)+1):
print(str(i) + " x " + num + " = " + str(i * int(num)))
except ValueError:
print("Please enter a number")
continue
time.sleep(2)
这最初不起作用的原因是因为您的 try 语句围绕着一个定义,而不是围绕着 mult() 函数的实际调用。这意味着当它运行时,它试图定义一个名为 的函数mult,并且运行良好。然而,当它真正调用第 13 行的函数时,由于没有 try 语句而导致它中断。
TA贡献1744条经验 获得超4个赞
为什么要在 try 中定义 mult?
尝试将 try 放入函数中。现在您正在尝试检查是否可以创建函数 mult。成功后你尝试调用它(你会遇到问题的地方)。
`
# shows multiplication table of a number upto that number
import time
while True:
num = input("Enter number: ")
def mult():
try:
for i in range(1, int(num)+1):
print(str(i) + " x " + num + " = " + str(i * int(num)))
except ValueError:
print("Please enter a number")
continue
mult()
time.sleep(2)`
这应该有效,另外请注意,如果你想在你的函数中输入一个值,应该这样做:def mult(data)
调用:mult('数据')
添加回答
举报