如果文本不是数字,则更正文本
Correcting a text if it is not a number
我正在使用 python 构建一个基本计算器,我有一个功能可以检测输入的文本是否为数字。为此我定义了一个函数 ie
def check_num(num):
while not num.isnumeric():
print("Invalid number! Please enter a valid number.")
num = input()
当我输入数字时,它只接受第一个输入。
num1 = input()
check_num(num1)
如何让它接受最后输入的正确输入?
这是命令提示符中代码 运行 的图像:
您需要更改函数定义,以便函数 returns num
:
def check_num(num):
while not num.isnumeric():
print("Invalid number! Please enter a valid number.")
num = input()
return num
然后这样称呼它:
num1 = check_num(input())
您可以创建一个递归函数来请求数字而不是简单地检查它:
def ask_num():
num = input()
if num.is_numeric():
return num
print("Invalid number! Please enter a valid number.")
return ask_num()
我正在使用 python 构建一个基本计算器,我有一个功能可以检测输入的文本是否为数字。为此我定义了一个函数 ie
def check_num(num):
while not num.isnumeric():
print("Invalid number! Please enter a valid number.")
num = input()
当我输入数字时,它只接受第一个输入。
num1 = input()
check_num(num1)
如何让它接受最后输入的正确输入?
这是命令提示符中代码 运行 的图像:
您需要更改函数定义,以便函数 returns num
:
def check_num(num):
while not num.isnumeric():
print("Invalid number! Please enter a valid number.")
num = input()
return num
然后这样称呼它:
num1 = check_num(input())
您可以创建一个递归函数来请求数字而不是简单地检查它:
def ask_num():
num = input()
if num.is_numeric():
return num
print("Invalid number! Please enter a valid number.")
return ask_num()