python 问一下这个程序为什么没有运行结果呢


def factor(num):
    target=int(num)
    res=set()
    for i in range(1,num):
        if num%i==0:
            res.add(i)
            res.add(num/i)
        return res
for i in range(2,1001):
    if i==sum(factor(i))-i:
        print(i)

img


那句 return res
应该移动到 红线位置, 和for平行

return 与第一个for对齐