流水灯从上往下在从下往上逐闪烁代码
时间: 2024-10-16 07:03:42 浏览: 0
流水灯的闪烁效果通常是通过定时器或者中断驱动的方式实现的,这里我将以简单的 Python 示例解释如何编写一个基础的从上到下再到下的逐行流水灯闪烁程序。假设我们有一个二维数组代表灯光状态,每个元素0表示关闭,1表示开启。
```python
import time
# 假设 lights是一个二维列表,如 [[1, 0, 0], [1, 1, 0], [0, 1, 1]] 表示三个灯位
lights = [
[1, 0, 0],
[1, 1, 0],
[0, 1, 1]
]
# 定义灯列的数量和每一步移动的幅度
num_rows = len(lights)
step = -1 if num_rows > 1 else 1
def toggle_row(row):
for col in range(len(lights[row])):
lights[row][col] ^= 1 # 对应位置取反,实现灯的开闭切换
for _ in range(5): # 演示5次循环
print("Flashing from top to bottom:")
for row in range(num_rows):
toggle_row(row)
print(lights[row])
time.sleep(1) # 等待一秒
if step == 1: # 如果还没有到最底层,改变方向
step = -1
else: # 否则,切换回向上
step = 1
print("\nFlashing from bottom to top:")
for row in range(num_rows)[::-1]: # 从下往上逆序遍历
toggle_row(row)
print(lights[row])
time.sleep(1)
```
阅读全文