У меня небольшая проблема с моим скриптом Python.
На самом деле, я работаю над реальной светодиодной матрицей 8x8 и хочу нарисовать текст с анимацией (справа налево, слева направо, довниз, вниз вверх).
Например, я хочу написать букву Е.Итак, я создал матрицу E:
matrix =[
"1","1","1","1","1","1","1","1",
"1","1","1","1","1","1","1","1",
"1","1","0","0","0","0","0","0",
"1","1","1","1","1","0","0","0",
"1","1","1","1","1","0","0","0",
"1","1","0","0","0","0","0","0",
"1","1","1","1","1","1","1","1",
"1","1","1","1","1","1","1","1"]

Но теперь представьте, что я хочу переместить E для создания анимации.Если я переместлю свою букву E влево, восьмой столбец будет пустым, а через 1 с, седьмой тоже и т. Д. И когда моя матрица станет полностью пустой, моя буква E снова начнется в правильном положении ...
У вас есть идея, как я могу сделать это с массивом, матрицей или чем-то еще?
Спасибо
РЕДАКТИРОВАТЬ, тест кода с https://www.jdoodle.com/python3-programming-online:
matrix = [ [0, 0, 0, 1, 0],
[0, 0, 0, 1, 0],
[0, 0, 0, 1, 0],
[0, 0, 0, 1, 0],
[0, 0, 0, 1, 0]]
print(matrix)
def shift(my2dArray):
for _ in range(5): # shift to the left 8 times - brute force
for row in my2dArray:
row.pop(0) # removes first element of each row
row.append("0") # add "0" to the end of the row
# code to update display here and sleep for a bit
shift(matrix)
print(matrix)