Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ValueError:以10为基数的int()的文本无效:';字符串';_Python - Fatal编程技术网

Python ValueError:以10为基数的int()的文本无效:';字符串';

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:

我正在尝试编写一个代码,其中检查两个数字是否为数字。当输入为数字时,一切正常。当一个数字被视为str时会出现问题。然后我得到一个错误:
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()
如果您需要解释,请发表评论