不知道这个阶乘代码为什么跑不了,这个错误是错在哪了

img

代码如图,这个错误是说我isdigit用错了吗,但是问题是input得到的变量不是字符类型的吗,请指教


number = input('请输入一个数字我将计算它的阶乘:')
result = 1
while True:
    if number.isdigit():
        number = int(number)
        if number <= 1:
            print(result)
        else:
            for c in range(1, number + 1):
                result = result * c
            print(result)
    else:
        print('请输数字')
    number = input()
    result = 1

Python isdigit()函数的作用是检查一个字符串中的字符是否全部为数字字符,如果是全部为数字字符则返回True,否则返回False.

也就是说,这个函数只能用给字符串,报错说int不能用这个,你的number必须是字符,不能是int

有帮助的话采纳一下哦!