Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在使用返回函数时让python中定义的函数循环?_Python_Function_Loops_Primes - Fatal编程技术网

如何在使用返回函数时让python中定义的函数循环?

如何在使用返回函数时让python中定义的函数循环?,python,function,loops,primes,Python,Function,Loops,Primes,我已经编写了一个python代码来为小于n_max的p生成一个所有Mersenne素数q的列表。这个函数在使用print时工作,但是我需要使用return,但这会停止循环,只输出第一个Mersenne素数3 def素数(n): i、 p,ps,m=0,3,[2],n//2 筛子=[True]*m 而p则需要初始化一个用于存储所有素数的列表a。然后在它后面附加q def mersenne_prime(n_max): a=[] for p in primes(n_max):

我已经编写了一个python代码来为小于n_max的p生成一个所有Mersenne素数q的列表。这个函数在使用
print
时工作,但是我需要使用
return
,但这会停止循环,只输出第一个Mersenne素数3

def素数(n):
i、 p,ps,m=0,3,[2],n//2
筛子=[True]*m

而p则需要初始化一个用于存储所有素数的列表a。然后在它后面附加q

def mersenne_prime(n_max):
    a=[]
    for p in primes(n_max):
        print(p)
        if lucas_lehmer2(p):
            q=(2**p)-1
            a.append(a)
    return a

附加到列表,然后返回列表,就像您在
primes
函数中所做的那样?
def mersenne_prime(n_max):
    a=[]
    for p in primes(n_max):
        print(p)
        if lucas_lehmer2(p):
            q=(2**p)-1
            a.append(a)
    return a