【发布时间】:2020-02-08 13:34:58
【问题描述】:
我正在尝试将 RGB 值列表相乘,更具体地说,将每个元素与不同的变量相乘 例如
colors = [(70, 76, 75), (97, 107, 93)]
multipliers = [2,3]
prod = lambda a,b: [a[i]*b[i] for i in range(len(a))]
newcolors = (prod (colors, multipliers))
期望的输出:
[(70,76,75), (70,76,75), (97, 107, 93), (97, 107, 93), (97, 107, 93)]
但我得到的输出是
[(70,76,75, 70,76,75), (97, 107, 93, 97, 107, 93,97, 107, 93)]
返回的列表不再包含 RGB 值
似乎在起作用的是
n = 2
newcolors = sorted(colors*n)
输出:
[(70,76,75), (70,76,75), (97, 107, 93), (97, 107, 93)]
但是这样所有的 RGB 值都乘以相同的 n-amount 次数。
有人知道如何解决这个问题吗?
【问题讨论】:
-
您能否更具体地说明问题是什么?
标签: python list sorting rgb multiplication