這裏的歐幾里得無限是這樣的問題:下面的清單N的所有素數使用素證明
寫一個接受結合的N-的功能,並且如由無限的古典證明確定找到的第一N 素數質數的集合 。即:以P = {2}開始;然後形成m,其總和爲 1與P的所有元素的乘積。將m的最小素數 乘以P並重復。
這裏是我做過什麼:
def get_primes(n):
i = 2
prime_list = []
while i < n:
p = prod(prime_list)+1
r = min_symbolic(prime_divisors(p))
prime_list.append(r)
i = i+1
return prime_list
它給了我一串ERRS的,當我試圖get_primes(10),我怎麼錯在這裏做什麼?我剛開始學習python,謝謝。
編輯:對不起,我沒有說清楚,這裏是我得到
Error in lines 1-1
Traceback (most recent call last):
File "/projects/3fe731e3-2b4d-43b9-86a0-5efb4456f029/.sagemathcloud/sage_server.py", line 881, in execute
exec compile(block+'\n', '', 'single') in namespace, locals
File "", line 1, in <module>
File "", line 6, in get_primes
File "/projects/sage/sage-6.9/local/lib/python2.7/site-packages/sage/rings/arith.py", line 2538, in prime_divisors
return [p for p,_ in factor(n)]
TypeError: 'sage.symbolic.expression.Expression' object is not iterable
'bunch of errs' can you be more specific?哪些錯誤?在哪一行?你有沒有試着去理解它們? – oliverpool
什麼是'prod','min_symbolic'和'prime_divisors'?請給[MCVe](http://stackoverflow.com/help/mcve)。 – Psytho
@ Alex.S:這些都是內置的Sage功能。這個問題應該仍然指出所看到的錯誤,但它確實在標題和標籤中提到它在Sage環境中。 – DSM