图书馆座位管理系统python代码
时间: 2023-08-06 08:11:15 浏览: 46
以下是一个简单的图书馆座位管理系统的Python代码示例:
```python
class Library:
def __init__(self, name, location, capacity):
self.name = name
self.location = location
self.capacity = capacity
self.seats = {}
def add_seat(self, seat_number):
if len(self.seats) < self.capacity:
self.seats[seat_number] = "available"
else:
print("No more seats available in this library.")
def remove_seat(self, seat_number):
del self.seats[seat_number]
def reserve_seat(self, seat_number):
if self.seats[seat_number] == "available":
self.seats[seat_number] = "reserved"
print(f"Seat {seat_number} has been reserved.")
elif self.seats[seat_number] == "reserved":
print(f"Seat {seat_number} is already reserved.")
else:
print(f"Seat {seat_number} is not available.")
def cancel_reservation(self, seat_number):
if self.seats[seat_number] == "reserved":
self.seats[seat_number] = "available"
print(f"Reservation for seat {seat_number} has been cancelled.")
elif self.seats[seat_number] == "available":
print(f"No reservation found for seat {seat_number}.")
else:
print(f"Seat {seat_number} is not available.")
def display_seats(self):
for seat, status in self.seats.items():
print(f"Seat {seat} is {status}.")
```
可以使用以下代码来测试:
```python
library = Library("Main Library", "San Francisco", 50)
for i in range(1, 51):
library.add_seat(i)
library.display_seats()
library.reserve_seat(10)
library.reserve_seat(10)
library.cancel_reservation(20)
library.reserve_seat(20)
library.display_seats()
```
输出应为:
```
Seat 1 is available.
Seat 2 is available.
...
Seat 49 is available.
Seat 50 is available.
Seat 10 has been reserved.
Seat 10 is already reserved.
No reservation found for seat 20.
Seat 20 has been reserved.
Seat 1 is available.
Seat 2 is available.
...
Seat 9 is available.
Seat 10 is reserved.
Seat 11 is available.
...
Seat 19 is available.
Seat 20 is reserved.
...
Seat 49 is available.
Seat 50 is available.
```
这个系统允许图书馆管理员添加、删除和显示座位,以及让读者预定和取消预定座位。