Python for loop: “list index out of range” error?
我有一个代码,基于项目Euler的问题3:"13195的主要因素是5、7、13和29。数字600851475143的最大主因子是什么?"
我在下面有一个我认为可以用的代码,但是第9行(
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | def find_primes(num): res = [] print(num) for i in range(2,num): if num%i==0: res.append(i) for j in res: for k in range(2,res[j]): if res[j]%k==0: res[j]=False list(filter((False).__ne__, res)) m = max(res) return(m) |
有人知道我哪里出错了吗?
谢谢您!
你可能想这样做:
1 2 | for j in range(len(res)): for k in range(2,res[j]): |
使用