函数内部的input()抛出异常> "input() takes 0 positional arguments but 1 was given"


def input():
number = int(input('enter a number: '))
return number
input()
def checkValidity(val):
if val == 0 and val >= 2:
switch(val)
else:
input()
def switch(num):
if num == 1:
print('one')
elif num == 2:
print('two')
else:
print('null')
checkValidity(number)

在没有函数的情况下定义时,input()工作正常,但是当在函数中定义并调用时,它会引发异常。

你不应该input()命名你的函数,因为它已经是一个内部函数了!你的函数应该被称为my_user_input()或类似的东西。

通过调用自己的函数input(),您可以影子并因此"覆盖"现有的内置input()函数。这样,您将无法再在脚本中访问其功能。

相关内容

最新更新