创建一个名为my_randoms的‘列表’,其中包含10个介于0和100之间的随机数。
这就是我到目前为止所知道的:
import random
my_randoms=[]
for i in range (10):
my_randoms.append(random.randrange(1, 101, 1))
print (my_randoms)
不幸的是,Python的输出是这样的:
[34]
[34, 30]
[34, 30, 75]
[34, 30, 75, 27]
[34, 30, 75, 27, 8]
[34, 30, 75, 27, 8, 58]
[34, 30, 75, 27, 8, 58, 10]
[34, 30, 75, 27, 8, 58, 10, 1]
[34, 30, 75, 27, 8, 58, 10, 1, 59]
[34, 30, 75, 27, 8, 58, 10, 1, 59, 25]
它按照我的要求生成10个数字,但它一次生成一个数字。我做错了什么?
发布于 2013-05-21 01:45:30
您可以使用random.sample
通过一次调用生成列表:
import random
my_randoms = random.sample(range(100), 10)
它生成从0到99 (包括0到99)范围内的数字。如果你想要1到100,你可以使用这个(感谢@martineau指出了我的复杂解决方案):
my_randoms = random.sample(range(1, 101), 10)
发布于 2013-05-21 01:43:26
import random
my_randoms = [random.randrange(1, 101, 1) for _ in range(10)]
发布于 2013-05-21 01:42:14
修复print
语句的缩进
import random
my_randoms=[]
for i in range (10):
my_randoms.append(random.randrange(1,101,1))
print (my_randoms)
https://stackoverflow.com/questions/16655089
复制相似问题