【发布时间】:2020-01-29 01:30:32
【问题描述】:
第一次发帖。对 python 来说真的很陌生。
我目前有一个 16x96 的 LED 面板,带有紫外线、绿色和蓝光。这个想法是使整个面板(矩阵)以用户输入的特定强度以用户选择的特定颜色点亮。我知道有一种更有效的方法可以用变量编写代码,但我需要一点帮助。怎样才能点亮第一列、第四列、第七列等等,直到整个LED面板都点亮到UV?或者在绿色的情况下:第二列、第五列、第八列等?基本上每次都比原版+3。我写的代码如下:
panel = np.zeros((16,96))
#function that encompasses object color when selected
def click1():
global a
global i
i = lightintensityentry.get()
a = var1.get() #variable associated with selection
if a == 1:
panel[:,0::3] = i
print(panel)
print("Object is a UV light!")
elif a == 2:
panel[:,1::4]= i
print(panel)
print("Object is a green light!")
elif a == 3:
panel[:,2::3]= i
print(panel)
print("Object is a blue light!")
elif a == 4:
print(panel) #would be all zeros, therefore no light
print("Object produces no light!")
我认为类似的事情会有所帮助:Edit every other item in an array 它没有产生我预期的结果。任何帮助将不胜感激。
寻找有关此功能的解释: 面板[:,0::3] 0::3 究竟做了什么?
谢谢!
【问题讨论】:
标签: python