技术文摘
Python实现火车订票的模拟代码
2025-01-09 05:14:59 小编
Python实现火车订票的模拟代码
在当今数字化时代,火车订票系统的便捷性为人们的出行提供了极大的便利。通过Python语言,我们可以模拟一个简单的火车订票系统,下面将为你介绍其实现过程。
我们需要定义一些必要的数据结构来存储火车信息和订票信息。可以使用字典来表示火车的车次、座位数量、出发地、目的地等信息,同时用列表来记录已预订的座位。
trains = {
"G100": {"seats": 100, "departure": "北京", "destination": "上海"},
"G200": {"seats": 80, "departure": "广州", "destination": "深圳"}
}
booked_seats = {}
接下来,实现订票功能。当用户输入车次和订票数量时,系统需要检查该车次是否存在以及是否有足够的座位可供预订。
def book_ticket(train_number, num_seats):
if train_number in trains:
available_seats = trains[train_number]["seats"]
if available_seats >= num_seats:
trains[train_number]["seats"] -= num_seats
if train_number in booked_seats:
booked_seats[train_number] += num_seats
else:
booked_seats[train_number] = num_seats
print(f"成功预订 {num_seats} 张 {train_number} 车次的车票。")
else:
print("抱歉,该车次剩余座位不足。")
else:
print("车次不存在,请重新输入。")
然后,还可以添加查询余票功能,方便用户了解各车次的剩余座位情况。
def check_seats(train_number):
if train_number in trains:
print(f"{train_number} 车次剩余座位数:{trains[train_number]['seats']}")
else:
print("车次不存在,请重新输入。")
最后,通过用户输入来调用相应的功能。
while True:
print("1. 订票 2. 查询余票 3. 退出")
choice = input("请选择操作:")
if choice == "1":
train = input("请输入车次:")
seats = int(input("请输入订票数量:"))
book_ticket(train, seats)
elif choice == "2":
train = input("请输入车次:")
check_seats(train)
elif choice == "3":
break
else:
print("无效选择,请重新输入。")
通过以上Python代码,我们实现了一个简单的火车订票模拟系统,你可以根据实际需求进一步完善和扩展其功能。
- SpringBoot 与 Redis BitMap 用于签到及统计功能的实现
- 提升 Elasticsearch 索引性能的十大技巧,你掌握了几个?
- 探索 Java:1==1 为真但 128==128 为假的原因
- Nginx 配置全解析
- C# 多线程的多种实现途径:使程序“分身有术”
- 事件驱动与推拉结合:智慧社区服务解耦的创新方式
- 现代前端工具库探究:es-toolkit、reactuse、vueuse 的价值所在
- C# 单例模式的多种实现:塑造独一无二的对象
- 告别 Print ,借助 IceCream 实现高效 Python 调试
- 卷积神经网络算法终于被弄懂啦
- Hadoop 是什么以及其工作原理
- 函数创建的历程与过程解析
- 如何利用 Windbg 查看 C#某线程的栈大小?我们一起探讨
- Spring Boot 与.NET 6 的巅峰较量:谁是开发领域超级明星?
- .NET Core 中十大优秀库推荐,你用过几种?