我需要用隨機數(10 5數字)生成一個大數組(或列表)。我是想這樣的:隨機數與python大數組
vet = random.sample(range(10),100000)
但是當我嘗試運行:
vet = random.sample(range(10),10000)
文件 「/usr/lib/python2.7/random.py」,線320,在樣品 加薪ValueError(「樣本大於羣體」) ValueError:樣本大於羣體
任何解決方案?
tkns
我需要用隨機數(10 5數字)生成一個大數組(或列表)。我是想這樣的:隨機數與python大數組
vet = random.sample(range(10),100000)
但是當我嘗試運行:
vet = random.sample(range(10),10000)
文件 「/usr/lib/python2.7/random.py」,線320,在樣品 加薪ValueError(「樣本大於羣體」) ValueError:樣本大於羣體
任何解決方案?
tkns
你想要的是
[random.random() for _ in xrange(100000)]
random.sample(population, k) Return a k length list of unique elements chosen from the population sequence. Used for random sampling without replacement.
所以當呼叫random.sample(range(10), 100000)
你試圖在長度爲10的序列中提取100000個獨特的元素,這顯然無法工作。
注意
random.random()
返回0之間[浮動值; 1)random.randrange([start], stop[, step])
返回從序列range([start], stop[, step])
random.randint(a, b)
在[A返回一個整數值的隨機元件; B]random.sample
時,平等len(population) >= k
必須持有我覺得你這樣的事情之後是:
vet = [random.randint(1,10) for _ in range(100000)]
考慮到列表的大小,你可能要考慮像[numpy的]數組庫(http://numpy.scipy.org/) :'進口numpy; vet = numpy.random.randint(0,10,10000)' – Snowball