Python - как уменьшить элементы значения массива - PullRequest
0 голосов
/ 25 сентября 2018

Я создал программу, которая выглядит следующим образом: demo

Она работает идеально, как я хотел, однако как мне отменить этот эффект?я хочу уменьшить значение до нуля (с шагом "1") после достижения 1280?

Код здесь:

matrix=[]
for i in range(0,6):
    matrix.append(0)

matrix[5]=0x0A
i = 1

print matrix
while True:
    matrix[0]=i&0xFF
    i += 1
    if (i > 255):
        matrix[0] = 255
        matrix[1] = i&0xFF
    if (i > 512):
        matrix[1] = 255
        matrix[2] = i&0xFF
    if (i > 768):
        matrix[2] = 255
        matrix[3] = i&0xFF
    if(i > 1024):
        matrix[3] = 255
        matrix[4] = i&0xFF
    print matrix

Я не могу изменить значение «i» на -1, потому что оно находится в цикле while (мне так нужно).Так что может быть решением здесь?

1 Ответ

0 голосов
/ 25 сентября 2018

Вот решение:

Вы должны создать еще одну переменную, с помощью которой вы можете изменить состояние x.

matrix=[]
for i in range(0,6):
    matrix.append(0)  

x = 1
counting = 1

print matrix
while True:
    if (x >= 1023):
        counting = -1
    matrix[0]=x&0xFF
    x += counting

    if (x >= 256):
        matrix[0] = 255
        matrix[1] = x&0xFF
    if (x >= 512):
        matrix[1] = 255
        matrix[2] = x&0xFF
    if (x >= 768):
        matrix[2] = 255
        matrix[3] = x&0xFF
    if (x == -1):
        counting = 1
    print matrix
...