这个简单的代码给我带来了严重的语法错误,除数代码

this simple code is giving me hard syntax error, divisor code

def main():
    user_number = float(input("Enter a number: "))
    num = user_number//2
    round(num,0)
    int(num)
    print(num)
    divisor = 1
    for divisor in range(divisor,num):
        if num%divisor == 0:
                print(divisor)

while True:
    main()

我得到的语法错误:TypeError:'float' object cannot be interpreted as an integer

num = user_number // 2 的结果是一个浮点数。

调用 round(num, 0) 不执行任何操作,因为您没有将结果存储在 num 变量中。反正结果是float。您应该改为 num = int(num)