我正在尝试在 Jupyter Notebooks 中测试一个使用 gmpy2 生成素数的函数,但我得到了以下输出。
import gmpy2
def solution(i):
n = 2
while True:
yield n
n = str(gmpy2.next_prime(n))
for i in solution(1):
print(i)
input()
2
3
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-14-e0db74781d33> in <module>
6 n = str(gmpy2.next_prime(n))
7
----> 8 for i in solution(1):
9 print(i)
10 input()
<ipython-input-14-e0db74781d33> in solution(i)
4 while True:
5 yield n
----> 6 n = str(gmpy2.next_prime(n))
7
8 for i in solution(1):
TypeError: next_prime() requires 'mpz' argument
为什么函数成功输出序列中的前两个数字(2 和 3)但随后产生错误?是什么mpz
意思?