Python ValueError:以10为基数的int()的文本无效:';字符串';
我正在尝试编写一个代码,其中检查两个数字是否为数字。当输入为数字时,一切正常。当一个数字被视为str时会出现问题。然后我得到一个错误:Python ValueError:以10为基数的int()的文本无效:';字符串';,python,Python,我正在尝试编写一个代码,其中检查两个数字是否为数字。当输入为数字时,一切正常。当一个数字被视为str时会出现问题。然后我得到一个错误:ValueError:int()的文本无效,基数为10:“键盘中键入的任何str” 这是我的密码: def dividingResult(x, y): result = x/y return result def checkDigit1(x): if x.isdigit(): return x else:
ValueError:int()的文本无效,基数为10:“键盘中键入的任何str”
这是我的密码:
def dividingResult(x, y):
result = x/y
return result
def checkDigit1(x):
if x.isdigit():
return x
else:
print('It is not a digit')
programStart()
def checkDigit2(y):
if y.isdigit():
return y
else:
print('It is not a digit')
programStart()
def programStart():
print("type digit 1")
digit1 = input()
checkDigit1(digit1)
print("type digit 2")
digit2 = input()
checkDigit2(digit2)
print(dividingResult(int(digit1), int(digit2)))
programStart()
这里的问题是打印(dividigresult(int(digit1)、int(digit2)) 您只检查函数
checkDigit1
和checkDigit2
中的数字,上面的一行不在它们里面。你没有为此设置任何条件
这是全部代码
def dividingResult(x, y):
result = x/y
return result
def checkDigits(x, y):
if x.isdigit() and y.isdigit():
return x, y
else:
print('These are not digits')
programStart()
return False
def programStart():
print("type digit 1")
digit1 = input()
print("type digit 2")
digit2 = input()
checkDigits(digit1, digit2)
if checkDigits:
print(dividingResult(int(digit1), int(digit2)))
programStart()
如果您需要解释,请发表评论