gdl*_*dlm 9 python arrays random
我需要使用随机数(10⁵数)生成一个大数组(或列表).我这样想:
vet = random.sample(range(10),100000)
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行时:
vet = random.sample(range(10),10000)
Run Code Online (Sandbox Code Playgroud)
文件"/usr/lib/python2.7/random.py",第320行,样本中引发ValueError("样本大于填充")ValueError:样本大于人口
有解决方案吗
tkns
mar*_*ing 24
你想要的是什么
[random.random() for _ in xrange(100000)]
Run Code Online (Sandbox Code Playgroud)
从随机模块文档:
random.sample(population,k)返回从种群序列中选择的独特元素的长度列表.用于无需更换的随机抽样.
所以在打电话的时候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)]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33687 次 |
| 最近记录: |