Untitled
unknown
plain_text
2 years ago
3.8 kB
7
Indexable
import random
import datetime
# Sample data
airlines = ["Airways", "FlyHigh", "SkyTravel", "JetStream"]
cities = ["New York", "Los Angeles", "Chicago", "Houston", "Miami", "Atlanta", "Dallas", "San Francisco"]
seat_classes = ["Economy", "Business", "First Class"]
# Generate a random flight number
def generate_flight_number():
return f"{random.choice(['AA', 'DL', 'UA', 'SW'])}{random.randint(1000, 9999)}"
# Function to get user details
def get_user_details():
print("Enter your details:")
first_name = input("First Name: ")
last_name = input("Last Name: ")
email = input("Email: ")
phone_number = input("Phone Number: ")
billing_address = input("Billing Address: ")
return first_name, last_name, email, phone_number, billing_address
# Function to choose flight details
def choose_flight():
print("\nChoose your flight details:")
print("Available airlines:")
for idx, airline in enumerate(airlines, 1):
print(f"{idx}. {airline}")
airline_choice = int(input("Select airline (number): ")) - 1
print("\nAvailable departure cities:")
for idx, city in enumerate(cities, 1):
print(f"{idx}. {city}")
departure_choice = int(input("Select departure city (number): ")) - 1
print("\nAvailable destination cities:")
for idx, city in enumerate(cities, 1):
print(f"{idx}. {city}")
destination_choice = int(input("Select destination city (number): ")) - 1
print("\nAvailable seat classes:")
for idx, seat_class in enumerate(seat_classes, 1):
print(f"{idx}. {seat_class}")
seat_class_choice = int(input("Select seat class (number): ")) - 1
departure_date = input("Enter departure date (YYYY-MM-DD): ")
return airlines[airline_choice], cities[departure_choice], cities[destination_choice], seat_classes[seat_class_choice], departure_date
# Function to process payment
def process_payment():
print("\nEnter your payment details:")
card_number = input("Credit Card Number: ")
expiry_date = input("Expiry Date (MM/YY): ")
cvv = input("CVV: ")
return card_number, expiry_date, cvv
# Function to generate booking details
def generate_booking(first_name, last_name, email, phone_number, billing_address, airline, departure_city, destination_city, seat_class, departure_date, card_number):
booking_number = f"{random.randint(100000, 999999)}"
flight_number = generate_flight_number()
booking_details = {
"Booking Number": booking_number,
"First Name": first_name,
"Last Name": last_name,
"Email": email,
"Phone Number": phone_number,
"Billing Address": billing_address,
"Airline": airline,
"Flight Number": flight_number,
"Departure City": departure_city,
"Destination City": destination_city,
"Seat Class": seat_class,
"Departure Date": departure_date,
"Card Number": card_number[-4:], # Show only last 4 digits
}
return booking_details
# Function to display booking details
def display_booking_details(booking_details):
print("\nBooking Confirmed!")
print("Booking Details:")
for key, value in booking_details.items():
print(f"{key}: {value}")
def main():
first_name, last_name, email, phone_number, billing_address = get_user_details()
airline, departure_city, destination_city, seat_class, departure_date = choose_flight()
card_number, expiry_date, cvv = process_payment()
booking_details = generate_booking(first_name, last_name, email, phone_number, billing_address, airline, departure_city, destination_city, seat_class, departure_date, card_number)
display_booking_details(booking_details)
if __name__ == "__main__":
main()
Editor is loading...
Leave a Comment