伪异常ValueError

问题描述

我的方法正在捕获ValueEror,但在这种情况下不应发生。输入示例:+ 15,-7。

可能是什么问题以及如何解决

def isdigit(number):
    try:
        int(number)
    except ValueError:
        return False
    else:
        return True

enter image description here

enter image description here

解决方法

这种方法肯定是您要寻找的

def is_digit(num):
  while True:
    try:
      num = int(input("Enter an integer number: "))
      break
    except ValueError:
      print("Invalid input. Please input integer only")  
      continue

print(is_digit("+9")

输出

Invalid input. Please input integer only

投票并检查:-)