python - Python如何在1到6之间随机选择2个随机数
问题描述
我正在尝试编写此代码,并以随机顺序打印出 3 行数字 1 - 6,这很好。但是有什么方法可以让它打印 1 到 6 之间的数字对,而不是随机打印 6 个数字?示例:它当前打印:
[1, 6, 5, 3, 4, 2]
所需打印:
[1, 6]
[5, 3]
[4, 2]
代码:
@bot.command()
async def teams(ctx, players):
await ctx.send("Ido - 1: Yona - 2: Noam - 3: Gil - 4: Liel - 5: Yuval - 6:")
await ctx.send('Calculating...')
from random import shuffle
sequence1 = [i for i in range(1, int(players)+1)]
shuffle(sequence1)
await ctx.send(sequence1)
sequence2 = [i for i in range(1, int(players)+1)]
shuffle(sequence2)
await ctx.send(sequence2)
sequence3 = [i for i in range(1, int(players) + 1)]
shuffle(sequence3)
await ctx.send(sequence3)
解决方案
使用列表理解,这也将通过在最后创建一个奇异组来处理不均匀的列表。
l = [1, 6, 5, 3, 4, 2]
n = 2
lst = [l[i:i + n] for i in range(0, len(l), n)]
for i in lst:
print(i)
[1, 6]
[5, 3]
[4, 2]
推荐阅读
- c# - 如何使用 .net 核心连接到 Cloud Firestore DB?
- python - 如何安装最新版本的seaborn
- kivy - 是否可以在 kivy 应用程序中禁用 GPU?
- python - regionprops 的 mean_intensity 属性根据 threshold_local 方法中指定的 block_size 返回不同的值
- google-maps - 如何在谷歌地图 Ionic 3 上删除多边形
- matlab - 如何在 Matlab 2018 断点后继续执行?
- vaadin - HasUrlParameter#setParameter 中的 Vaadin Flow 重新路由不会更改 URL?
- javascript - 未捕获的类型错误:无法读取 React 中未定义的属性“名称”
- docker - 使用 docker-compose build 时在 x 秒内重试?
- angularjs - 堆叠在 2 列或 1 列中的可变高度的 md 卡