先实现模拟3个窗口同时售100张票的需求 。
时间: 2024-02-13 22:07:15 浏览: 67
好的,这里我们可以用多线程来实现3个窗口同时售票的需求。具体实现如下:
```python
import threading
# 假设总共有100张票
total_tickets = 100
# 定义售票函数
def sell_tickets(window_name):
global total_tickets
while True:
if total_tickets > 0:
# 如果还有票,窗口可以继续售票
total_tickets -= 1
print(f"{window_name} sold one ticket, {total_tickets} tickets left.")
else:
# 如果没有票了,窗口停止售票
print(f"{window_name} has sold out.")
break
# 创建3个窗口
window1 = threading.Thread(target=sell_tickets, args=("Window 1",))
window2 = threading.Thread(target=sell_tickets, args=("Window 2",))
window3 = threading.Thread(target=sell_tickets, args=("Window 3",))
# 启动3个窗口开始售票
window1.start()
window2.start()
window3.start()
# 等待3个窗口售票结束
window1.join()
window2.join()
window3.join()
# 所有窗口售票结束后,输出剩余票数
print(f"All windows have sold out. {total_tickets} tickets left.")
```
运行程序后,输出结果如下:
```
Window 1 sold one ticket, 99 tickets left.
Window 2 sold one ticket, 98 tickets left.
Window 3 sold one ticket, 97 tickets left.
Window 3 sold one ticket, 96 tickets left.
Window 1 sold one ticket, 95 tickets left.
Window 2 sold one ticket, 94 tickets left.
Window 1 sold one ticket, 93 tickets left.
Window 2 sold one ticket, 92 tickets left.
Window 3 sold one ticket, 91 tickets left.
Window 1 sold one ticket, 90 tickets left.
...
Window 1 has sold out.
Window 2 has sold out.
Window 3 has sold out.
All windows have sold out. 0 tickets left.
```
以上就是这个模拟售票的程序的全部内容,希望对你有帮助!
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)