python 使用七段数码管方法,制作一个红灯绿灯各30秒的带倒计时的红绿灯,黄灯3秒
时间: 2024-02-28 10:56:39 浏览: 211
好的,以下是使用七段数码管方法制作红绿灯的 Python 代码:
```
import time
# 定义七段数码管
digit = [['111', '101', '101', '101', '111'], ['001', '001', '001', '001', '001'], ['111', '001', '111', '100', '111'], ['111', '001', '111', '001', '111'], ['101', '101', '111', '001', '001'], ['111', '100', '111', '001', '111'], ['111', '100', '111', '101', '111'], ['111', '001', '001', '001', '001'], ['111', '101', '111', '101', '111'], ['111', '101', '111', '001', '111']]
# 定义显示数字的函数
def show_digit(num):
for i in range(5):
for j in range(len(num)):
print(digit[int(num[j])][i], end=' ')
print()
# 定义倒计时函数
def countdown(num):
for i in range(num, 0, -1):
show_digit(str(i).zfill(2))
time.sleep(1)
# 定义红灯函数
def red_light():
for i in range(30):
show_digit('0000')
time.sleep(1)
# 定义绿灯函数
def green_light():
for i in range(30):
show_digit('1111')
time.sleep(1)
# 定义黄灯函数
def yellow_light():
for i in range(3):
show_digit('0001')
time.sleep(1)
# 主程序
while True:
green_light()
yellow_light()
red_light()
yellow_light()
```
您可以将上面的代码复制到 Python 环境中执行,即可实现红灯绿灯各30秒的带倒计时的红绿灯,黄灯3秒。
阅读全文