对发现因素的程序感到困惑

时间:2019-06-12 00:46:13

标签: python-3.6

我正在网上寻找有关因素的信息,并看到了以下内容 我对此感到困惑,想要一些帮助 我不知道这是什么意思

这是针对我们正在制作的项目,该项目旨在使游戏能够找到用户必须输入数字的因素,并且程序将显示这些因素 我尝试过

   if ValueError:
        print("Sorry, I didn't understand that.")

但是它不起作用,我希望程序说“对不起,我不明白。”如果用户键入字母或特殊字符

如果用户键入字母或特殊字符,我也该如何循环播放

   def print_factors(x):
      print("The factors of",x,"are:")
      for i in range(1, x + 1):
      if x % i == 0:
         print(i)

    num = int(input("Enter a number: "))

    print_factors(num)

程序可以运行,但是我似乎无法在顶部添加循环和值错误的东西

1 个答案:

答案 0 :(得分:1)

您可以使用try catch块,并捕获valueError异常。像下面一样

def print_factors(x):
    print("The factors of",x,"are:")
    for i in range(1, x + 1):
        if x % i == 0:
            print(i)


try:
    num = int(input("Enter a number: "))
    print_factors(num)
except ValueError:
    print("Sorry, I didn't understand that.");