我该如何替换代码中的numpy数组?
我有一个程序,它用numpy数组来创建线性渐变。但是因为numpy库在微控制器上占用的空间太大,所以不能使用。有没有什么办法可以用其他东西替代numpy.array呢?
import numpy as np
def colorFade(c1, c2, mix=0):
c1 = np.array(c1)
c2 = np.array(c2)
print(tuple((1-mix)*c1 + mix*c2))
c1 = (0, 0, 200)
c2 = (200, 0, 200)
n = 500
for x in range(n+1):
colorFade(c1,c2,x/n)
我尝试把数组改成元组和列表,但都失败了,出现了这个错误:TypeError: can't multiply sequence by non-int of type 'float'
。而使用numpy.array模块就没有这个错误。
1 个回答
0
列表和元组不会自动对每个元素进行数学运算,你需要自己写代码来实现这个功能。
def colorFade(c1, c2, mix=0):
print(tuple((1-mix)*e1 + mix*e2 for e1, e2 in zip(c1, c2)))