看板 Python 關於我們 聯絡資訊
大家好~我是自學的python新手 如果我想要找某個數目的質數 我想的辦法是下面所寫的 我的想法是如果要找a個質數 就只須找a*a個數 就一定找的到a個 但這樣的寫法 會將a*a個裡面的所有質數都找出來 因此 只將a個放到list裡再將質數print出來 可是最下面倒數第2行out of range 可否告知哪裡有誤呢 謝謝 a=int(raw_input("how many prime number do you want to find?")) b=0 e=[] while b<a: for n in range (2,a*a): for k in range (2,n): if n%k==0: break else: e=[n] b+=1 for d in range (0,a): print e[b] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.104.230.79
ayso:e=e+[n] print e[d] 吧? 07/17 15:33
timetofish:這樣是把e變成字串吧 我想要的是list的話要怎樣寫呢 07/17 15:40
ya790206:e=[n]這行註定e裡面只有一個元素,要依照一樓方法改 07/17 16:15
cobrasgo:有個建議,你的變數名字最好改一改,可讀性蠻差的… 07/18 23:27