Python:将随机数放入列表

新手上路,请多包涵

创建一个名为 my_randoms 的“列表”,包含 0 到 100 之间的 10 个随机数。

这是我到目前为止所拥有的:

 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 个数字,但它一次生成一个。我究竟做错了什么?

原文由 Linda Leang 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 523
1 个回答

您可以使用 random.sample 通过一次调用生成列表:

 import random
my_randoms = random.sample(range(100), 10)

这会生成 0 到 99(含)范围内的数字。如果你想要 1 到 100,你可以使用它(感谢@martineau 指出了我复杂的解决方案):

 my_randoms = random.sample(range(1, 101), 10)

原文由 robertklep 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏