写一个红灯绿灯各30秒的带倒计时的红绿灯,黄灯3秒的程序,用idle
时间: 2024-02-25 08:59:37 浏览: 171
好的,以下是Python实现的代码:
```python
import time
import tkinter as tk
# 创建窗口
window = tk.Tk()
window.title("红绿灯")
window.geometry("300x150")
# 创建标签
label = tk.Label(window, text="", font=("Arial", 30), fg="red")
label.pack(pady=10)
# 定义倒计时函数
def countdown(t):
while t >= 0:
mins, secs = divmod(t, 60)
timeformat = '{:02d}:{:02d}'.format(mins, secs)
label.config(text=timeformat)
time.sleep(1)
t -= 1
# 定义红灯函数
def red_light():
label.config(text="红灯", fg="red")
countdown(30)
# 定义绿灯函数
def green_light():
label.config(text="绿灯", fg="green")
countdown(30)
# 定义黄灯函数
def yellow_light():
label.config(text="黄灯", fg="yellow")
countdown(3)
# 循环播放红绿灯
while True:
red_light()
yellow_light()
green_light()
# 进入主循环
window.mainloop()
```
运行程序后,将会出现一个带有倒计时的窗口,每隔30秒就会自动切换红灯和绿灯,每隔3秒就会自动切换黄灯。
阅读全文