📌  相关文章
📜  从给定的门票列表中查找行程(1)

📅  最后修改于: 2023-12-03 15:22:02.137000             🧑  作者: Mango

从给定的门票列表中查找行程

在旅游行业中,门票是一个必要的组成部分。为了方便用户查询和购买门票,我们需要一个程序能够从给定的门票列表中查找行程。

程序实现

可以使用Python语言实现此程序。首先,需要将门票信息存储在一个列表中,每个门票都需要包含以下信息:

  • 行程名称
  • 出发地点
  • 目的地
  • 出行日期
  • 门票价格

下面的代码片段定义了一个门票类:

class Ticket:
    def __init__(self, name, departure, destination, date, price):
        self.name = name
        self.departure = departure
        self.destination = destination
        self.date = date
        self.price = price

接下来,我们需要一个函数来查找行程。这个函数接受四个参数:出发地点、目的地、出行日期和最高票价。函数将遍历门票列表,并返回符合条件的门票列表。

def find_tickets(departure, destination, date, max_price, tickets):
    found_tickets = []
    for ticket in tickets:
        if ticket.departure == departure and ticket.destination == destination and ticket.date == date and ticket.price <= max_price:
            found_tickets.append(ticket)
    return found_tickets
使用示例

下面的代码片段展示了如何使用上述函数来查找符合条件的门票。

# 创建门票列表
tickets = [
    Ticket("南京三日游", "南京", "扬州", "2021-10-20", 300),
    Ticket("南京一日游", "南京", "扬州", "2021-10-21", 100),
    Ticket("南京两日游", "南京", "扬州", "2021-10-22", 200),
    Ticket("南京三日游", "南京", "苏州", "2021-10-20", 400),
    Ticket("南京一日游", "南京", "苏州", "2021-10-21", 150),
    Ticket("南京两日游", "南京", "苏州", "2021-10-22", 300),
]

# 查找符合条件的门票
found_tickets = find_tickets("南京", "苏州", "2021-10-21", 200, tickets)

# 打印结果
for ticket in found_tickets:
    print(ticket.name, ticket.price)

运行结果如下:

南京一日游 100
南京一日游 150