我必须测试用户的输入是否是数字。否则,我需要再次请求输入。听起来很简单,对吧?但是,请检查以下功能
# Request number from user
def request_number():
number = input("Please, enter the card number you want to check: ")
if number.isnumeric():
return int(number)
elif number.isalpha() or number.isalnum() or number.isdecimal():
request_number()
如果用户的第一个输入实际上是一个数字,它工作正常4111111111111111
但是,如果用户首先输入一个字符串,例如asbsdl
. 该函数正确地要求第二次输入一个数字,但即使您输入一个数字,它也会返回None
.
任何人都可以解释一下吗?谢谢。