技术文摘
用Python列表实现火车购票模拟
2025-01-09 05:14:55 小编
用Python列表实现火车购票模拟
在当今数字化时代,火车票的购买变得越来越便捷。我们可以通过编程来模拟火车购票的过程,这里我们将使用Python列表来实现这一有趣的功能。
我们需要创建一个列表来表示火车的座位情况。假设火车有若干排座位,每排有一定数量的座位,我们可以用一个二维列表来表示。例如,我们创建一个5排,每排10个座位的火车座位列表:
seats = [[0 for _ in range(10)] for _ in range(5)]
这里的0表示座位为空,当座位被购买后,我们可以将其值改为1。
接下来,我们可以编写一个函数来显示当前火车座位的状态。通过遍历二维列表,我们可以清晰地看到哪些座位已经被购买,哪些还可以购买:
def show_seats():
for row in seats:
print(row)
然后,我们编写购票函数。用户输入排数和座位号,如果该座位为空(值为0),则将其值改为1,表示已购买:
def buy_ticket():
row = int(input("请输入排数:"))
seat_num = int(input("请输入座位号:"))
if seats[row - 1][seat_num - 1] == 0:
seats[row - 1][seat_num - 1] = 1
print("购票成功!")
else:
print("该座位已被购买,请选择其他座位。")
在主程序中,我们可以通过循环不断提供菜单选项,让用户选择查看座位状态或者购票:
while True:
print("1. 查看座位状态")
print("2. 购票")
print("3. 退出")
choice = int(input("请输入您的选择:"))
if choice == 1:
show_seats()
elif choice == 2:
buy_ticket()
elif choice == 3:
break
通过这样的Python列表实现的火车购票模拟,我们可以直观地了解到座位的购买情况,并且方便地进行购票操作。这种简单的模拟不仅有助于我们理解编程中的列表操作,还能为实际的购票系统开发提供一定的思路和基础。我们也可以根据需求对其进行进一步的扩展和优化,使其更加完善和实用。
- MySQL 获取当前年月的两种实现办法
- 修改 MySQL 数据表主键的方法
- MySQL 中 RIGHT JOIN 与 CROSS JOIN 操作实例
- 在 Mysql 及 Navicat 中实现字段自动填充当前时间与修改时间
- 解析 Mysql 中强大的 group by 语句
- JavaWeb 中 MySQL 多表查询语句解析
- MySQL 中基于已有表创建新表的三种方法(最新推荐)
- DBeaver 连接 MySQL 数据库超详细图文教程
- MySQL 截取 JSON 对象特定数据的场景实例剖析
- MYSQL 中设置字段自动获取当前时间的 SQL 语句
- MySQL 中 Join 算法(NLJ、BNL、BKA)全面剖析
- MySQL 中查询 varbinary 存储数据的方法
- MySQL 中查找配置文件 my.ini 位置的方法
- Mysql 中无限层次父子关系的查询语句实现方法
- MySQL 数据清理与磁盘空间释放的实现范例