if的嵌套使用编程练习

1、提示用户输入数字,计算并显示所有能整除它的约数,如果没有约数则提示该数字为素数,并把整体做成循环
做成循环提示:
int x;
注:while (scanf ("%d", &x) == 1)//用于获取整数输入及在输入非整数时推出循环的条件模拟


# 显示所有能整除它的约数
def show_divisor(n):
    result = []
    for i in range(2, n):
        if n % i == 0:
            result.append(i)
    return result


while True:
    try:
        num = int(input("请输入数字:"))
        result = show_divisor(num)
        if len(result) == 0:
            print("该数字不能被任何数整除,该数字为素数")
        else:
            print("该数字可以被以下数整除:", ",".join(str(i) for i in result))
    except ValueError:
        print("输入错误,请输入数字!")
    except KeyboardInterrupt:
        print("退出程序!")
        break