欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > Python模拟飞机选座系统:实现与扩展功能

Python模拟飞机选座系统:实现与扩展功能

2025/11/9 4:44:53 来源:https://blog.csdn.net/liaozp88/article/details/143649575  浏览:    关键词:Python模拟飞机选座系统:实现与扩展功能

Python实现:模拟飞机选座系统

在构建一个飞机选座系统时,我们可以利用Python来模拟一个基本的座位选择功能。此系统将包含座位布局展示、用户选座、重复确认和显示最终选择等功能。以下代码将展示如何实现一个简单的飞机选座系统。

功能描述

  1. 座位布局初始化:设定飞机座位布局,如每排有6个座位(A, B, C, D, E, F),总共20排。
  2. 显示座位:清晰地展示座位状态(O表示空座位,X表示已占用)。
  3. 选择座位:用户可以选择具体的座位。
  4. 确认选座:提供选座确认提示,避免误选。
  5. 显示最终结果:确认选座后展示更新后的座位布局。

代码实现

class AirplaneSeatingSystem:def __init__(self, rows=20, seats_per_row=6):self.rows = rowsself.seats_per_row = seats_per_row# 初始化所有座位为空座位 "O"self.seats = [['O' for _ in range(seats_per_row)] for _ in range(rows)]self.seat_labels = ['A', 'B', 'C', 'D', 'E', 'F'][:seats_per_row]def display_seating(self):print("\nCurrent seating arrangement:")print("   " + " ".join(self.seat_labels))  # 顶部显示座位标签for i, row in enumerate(self.seats):row_display = f"{i + 1:2} " + " ".join(row)print(row_display)print("O = Available, X = Occupied\n")def select_seat(self, row, seat):# 检查行号和座位号是否有效if 0 < row <= self.rows and seat in self.seat_labels:seat_index = self.seat_labels.index(seat)if self.seats[row - 1][seat_index] == 'O':confirm = input(f"Confirm booking for seat {row}{seat}? (yes/no): ").strip().lower()if confirm == 'yes':# 更新座位状态self.seats[row - 1][seat_index] = 'X'print(f"Seat {row}{seat} successfully booked!")else:print("Seat selection cancelled.")else:print(f"Seat {row}{seat} is already occupied. Please choose another seat.")else:print("Invalid seat selection. Please try again.")def start_booking(self):print("Welcome to the Airplane Seating System!")while True:self.display_seating()try:row = int(input("Enter the row number (1-20) or '0' to exit: "))if row == 0:print("Thank you for using the Airplane Seating System!")breakseat = input("Enter the seat letter (A-F): ").upper()self.select_seat(row, seat)except ValueError:print("Invalid input. Please enter a valid row number.")

使用流程

  1. 初始化程序:创建AirplaneSeatingSystem的实例并开始选座流程。

    plane = AirplaneSeatingSystem()
    plane.start_booking()
    
  2. 用户交互

    • 程序将展示当前座位状态。
    • 用户输入行号和座位字母来选择座位。
    • 系统提供确认选座提示,用户需输入yesno进行确认。
  3. 退出程序:输入0退出选座程序。

示例运行

Welcome to the Airplane Seating System!Current seating arrangement:A B C D E F1  O O O O O O2  O O O O O O...
20  O O O O O OO = Available, X = OccupiedEnter the row number (1-20) or '0' to exit: 5
Enter the seat letter (A-F): B
Confirm booking for seat 5B? (yes/no): yes
Seat 5B successfully booked!Current seating arrangement:A B C D E F1  O O O O O O2  O O O O O O3  O O O O O O4  O O O O O O5  O X O O O O...

代码说明

  • display_seating():清晰展示当前座位状态,帮助用户更方便地查看空余座位。
  • select_seat():验证用户输入的行号和座位字母是否有效;若座位可用,提示确认选座,以避免误操作。
  • start_booking():循环运行选座流程,直到用户输入退出命令。

功能扩展

  1. 不同座位类型:添加商务舱、头等舱的座位分布。
  2. 多座位预订:允许一次选择多个座位并进行批量确认。
  3. 乘客信息:记录乘客信息,如姓名、座位号等。

通过这样的设计,我们实现了一个简单的飞机选座系统,易于用户理解和操作,并可以扩展为更复杂的系统,如在线票务预订平台。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com