python - 如何在不重复代码的情况下定义 randint 的元组?

标签 python python-3.x iterable-unpacking

我经常将 randint 元组用于颜色值等

(a, b, c) = randint(0, 255), randint(0, 255), randint(0, 255)

当我认为必须有更好的方法时 - 有吗?

最佳答案

使用 numpy?

1

import numpy as np
tuple(np.random.randint(256, size=3))
# (222, 49, 14)

多个

import numpy as np
n=3
[tuple(i) for i in np.random.randint(256, size=(n,3))] # list
# (tuple(i) for i in np.random.randint(256, size=(n,3))) # generator
# [(4, 70, 3), (10, 231, 41), (141, 198, 105)]

速度比较

(randint(0, 255), randint(0, 255), randint(0, 255))

100000 loops, best of 3: 5.31 µs per loop

tuple(random.randint(0, 255) for _ in range(3))

100000 loops, best of 3: 6.96 µs per loop

tuple(np.random.randint(256, size=3))

100000 loops, best of 3: 4.58 µs per loop

关于python - 如何在不重复代码的情况下定义 randint 的元组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45515276/

相关文章:

python - 如何使用列中的数据创建列,但取决于该数据的出现

python - PyDev eclipse 显示编译错误红色标记,但运行正常?

python - XML 查找子标签的所有属性值

python - 如何在 VSCode 上安装新的 python 模块?

python - 解包概括

python:我什么时候可以解压生成器?

python - NumPY:了解如何对数组矩阵中的每个 n 值求和

python - "Permission Denied"试图在 Windows 10 上运行 Python

python - 使用 REGEX 读取财务报表

python - 获取 Python 函数以根据参数数量干净地返回标量或列表