首页 > 解决方案 > 对寻找因子的程序感到困惑

问题描述

我在网上搜索有关查找因素的信息,看到下面的那个我对此感到困惑并需要一些帮助我不知道这是什么意思

这是我们正在制作的一个项目,该项目是制作一个游戏来查找用户必须输入数字的因素,程序将显示我尝试放入的因素

   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)

该程序有效,但我似乎无法在顶部添加循环和值错误

标签: python-3.6

解决方案


您可以使用 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.");

推荐阅读