我正在定义一个函数,我可以调用该函数将用户的输入存储为变量,
确保它是一个数字,然后在代码中稍后将数字转换为整数以用于公式。
因此,想法是,当程序运行到几天时,它会提示用户输入getAnswer,这将启动该函数,以检查用户给出的答案,并将其转换为整数。与工作相同
def getAnswer(a):
while True:
if a.isdecimal():
a = int()
break
print('Numbers only please...')
days = input(getAnswer)
worked = input(getAnswer)
这就是最终的样子,就像《
最佳答案
您通过传递函数而不是提示用户的字符串来调用input
。也许你的意思是:
days = getAnswer()
使用
getAnswer()
定义为使用input
从用户那里获得响应,对其进行验证,然后将其返回。例如,def getAnswer():
while True:
a = input()
try:
return int(a)
except ValueError:
print('Numbers only please...')
在我看来,这比将输入函数传递给
getAnswer()
更为清晰,而try...except
子句是一种常见且易于理解的Python习惯用法。关于python - Python <函数functionName at 0x00000000>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33126727/