python模拟火车订票系统案例代码

题目描述

使用python模拟火车订票系统,

定义一个名为 Train 的类,表示火车。在 Train 类中,有一个构造函数 __init__,用于初始化火车的编号 train_number 和总座位数 total_seats,以及可用座位数 available_seats

Train 类还有两个方法:book_ticket 用于预订票,接受要预订的座位数作为参数,并根据可用座位数来决定是否预订成功;display_available_seats 用于显示当前列车的剩余座位数。

main 函数中,创建了一个名为 train 的火车对象,并通过一个循环来模拟用户与系统的交互。用户可以选择预订票、查看余票或退出系统,根据用户的选择调用相应的方法。使用 input 函数获取用户的输入,并使用条件语句来执行相应的操作。

实现代码

class Train:
    def __init__(self, train_number, total_seats):
        self.train_number = train_number
        self.total_seats = total_seats
        self.available_seats = total_seats

    def book_ticket(self, num_seats):
        if self.available_seats >= num_seats:
            print(f"预订成功!您已成功预订 {num_seats} 张票。")
            self.available_seats -= num_seats
        else:
            print("很抱歉,没有足够的座位可供预订。")

    def display_available_seats(self):
        print(f"列车 {self.train_number} 剩余座位数:{self.available_seats}/{self.total_seats}")


def main():
    train = Train("K123", 100)
    while True:
        print("\n欢迎使用火车订票系统!")
        print("1. 预订票")
        print("2. 查看余票")
        print("3. 退出")
        choice = input("请选择操作(输入对应数字):")

        if choice == "1":
            num_seats = int(input("请输入要预订的票数:"))
            train.book_ticket(num_seats)
        elif choice == "2":
            train.display_available_seats()
        elif choice == "3":
            break
        else:
            print("无效的选择,请重新输入。")


if __name__ == "__main__":
    main()

 

© 版权声明
THE END
喜欢就支持一下吧
点赞13赞赏 分享