TypeError:' builtin_function_or_method'对象不可下载 - 查找素数:/

时间:2014-04-28 09:46:42

标签: python primes

import math

def findprimes(k):

    Primes=[]
    Numbers=[]
    if k>3:
        r=findprimes(math.floor(k**(1/2)))
    for a in range(k):
        Numbers.append(a+1)
    if Numbers==[1,2]:
        Primes=[2]
    if Numbers==[1,2,3]:
        Primes=[2,3]
    if len(Numbers)>3:
        for v in list(r):

            for i in range(math.floor(k/v)):
                Numbers.remove[i*v]
    if len(Numbers)>3:
        Primes=Numbers
    return Primes

所以我写了很好的旧找到素数因为我将它用于另一个程序,但是当我运行它时它得到了

TypeError: 'builtin_function_or_method' object is not subscriptable error regarding Numbers.remove[i*v].

请不要以其他方式接近它,而是在这里克服它。

1 个答案:

答案 0 :(得分:2)

Numbers.remove()是一种方法,但您尝试使用[..]对其进行订阅:

Numbers.remove[i*v]

用parenhesis替换它:

Numbers.remove(i*v)