为了账号安全,请及时绑定邮箱和手机立即绑定

如果提供了非整数 int() 如何处理 ValueError

如果提供了非整数 int() 如何处理 ValueError

杨魅力 2021-11-09 19:53:16
Python 将函数读取input()为字符串。在将它传递给我的函数进行除法之前,变量使用int(). 如果一个变量是非整数(例如"a"),那么如何捕获它?def divideNums(x,y):    try:        divResult = x/y    except ValueError:        print ("Please provide only Integers...")    print (str(x) + " divided by " + str(y) + " equals " + str(divResult))def main():    firstVal = input("Enter First Number: ")    secondVal = input("Enter Second Number: ")    divideNums (int(firstVal), int(secondVal))if __name__ == "__main__":    main()如何处理firstVal/ 的类型转换secondVal?
查看完整描述

2 回答

?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

使用try/except ValueError块是对的,但用错了地方。try 块需要在变量被转换为整数的地方。例如。


def main():

    firstVal = input("Enter First Number: ")

    secondVal = input("Enter Second Number: ")


    try:

        firstVal = int(firstVal)

        secondVal = int(secondVal)

    except ValueError:

        # print the error message and return early

        print("Please provide only Integers...")

        return


    divideNums (firstVal, secondVal)


查看完整回答
反对 回复 2021-11-09
?
森栏

TA贡献1810条经验 获得超5个赞

您可以使用 isdigit 函数来检查输入值是否为整数


def main():


    firstVal = input("Enter First Number: ")

    secondVal = input("Enter Second Number: ")

    if firstVal.isdigit() and secondVal.isdigit():

        divideNums (int(firstVal), int(secondVal))

    else:

        print ("Please provide only Integers...")


查看完整回答
反对 回复 2021-11-09
  • 2 回答
  • 0 关注
  • 151 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信