【问题标题】:Generating all possible rgb colors生成所有可能的 rgb 颜色
【发布时间】:2013-01-01 00:01:46
【问题描述】:

看起来它会比实际简单得多,但是如何使用 python 生成所有 16,777,255 种 rgb 颜色?

【问题讨论】:

  • 您可能想做其他事情,也许是颜色选择器?这不是它的完成方式。此外,没有理由认为 RGB 被限制为每个通道 8 位(因此限制为 2^24 种颜色)。

标签: python colors


【解决方案1】:

8 位 RGB 值是数字 0..255 的三元组。您可以使用 itertools 中的笛卡尔积函数方便地生成它们。

itertools.product(xrange(256), repeat=3)

【讨论】:

    【解决方案2】:

    颜色通常表示为十六进制数字,实际上只是整数。所以一个从 0 到 16,777,215 (0xFFFFFF) 的简单循环就足以生成所有 24 位 RGB 颜色。

    在 python 2.x 中,你可以这样做:

    allcolors = range(0xFFFFFF+1):
    

    【讨论】:

    • list(range(...)) 在这里会更好(在 3.x 中。在 2.x 中,range() 已经返回一个列表)。无需为了制作列表而制作循环。
    猜你喜欢
    • 2011-04-26
    • 2020-10-04
    • 2011-02-27
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-13
    相关资源
    最近更新 更多