python-3.x - 生成的每个随机样本序列的 Python 还包括一个单独的 ID
问题描述
我正在尝试编写一个乐透模拟器,其中代码为大约 1000 个玩家生成 45 个随机唯一数字中的 6 个,其中每个玩家都有一个唯一的 ID。我想将它放入一个如下所示的数组中:
lotto[0...n-1][0...5]
其中 [0...n-1] 包含玩家 ID,[0...5] 包含他们唯一的 6 个游戏编号。
所以打印时应该看起来像这样
lotto[1][32, 34, 24, 13, 20, 8]
lotto[2][1, 27, 4, 41, 33, 17]
...
lotto[1000][6, 12, 39, 16, 45, 3]
在不实际将两个数组合并在一起的情况下做这样的事情的最佳方法是什么?
稍后我想使用合并排序算法对每个玩家的游戏号码进行数字排序,这样看起来就像这样,玩家 ID 不会干扰游戏号码。
lotto[1][8, 13, 20, 24, 32, 34]
lotto[2][1, 4, 17, 27, 33, 41]
到目前为止,我有:
playerID = list(range(1, 1001))
playerNum = random.sample(range(1, 45), 6)
print(playerID + playerNum)
但这只是打印并加入:
[1, 2, 3, ..., 1000, 32, 5, 19, 27, 6, 22]
谢谢您的帮助。
解决方案
import random
n_players = 1000
lotto = [random.sample(range(1, 45), 6) for _ in range(n_players)]
或者
import random
n_players = 1000
tup = tuple(range(1, 45))
lotto = []
for _ in range(n_players):
lotto.append(random.sample(tup, 6))
推荐阅读
- node.js - GC 和 JS Stacktrace 致命错误:接近堆限制的无效标记压缩分配失败 - Next.js 应用程序的 JavaScript 堆内存不足
- ruby-on-rails - 从 combine_pdf(ruby) 生成的 pdf 引发 xml 解析错误
- flutter - 使用 future.then() 消费 Future 的结果似乎只存在于 .then 函数() 中
- flutter - 带有居中的小部件上的小部件
- r - 如何编写一个删除R中行数据的for循环
- css - X 的所有后代以及 X 本身是否有一个 CSS 选择器?
- flutter - Flutter List 未在异步方法之外更新
- regex - 如何从 Clojure 中的组件构建正则表达式?
- reactjs - getItemAsync 返回 null 或以前的值
- elasticsearch - 用于过滤嵌套数组对象的无痛 Elasticsearch 脚本