图书管理系统项目核心功能代码实现
时间: 2023-08-10 18:08:54 浏览: 81
图书管理系统的核心功能包括以下方面:
1. 图书信息管理:包括新增图书、查看图书、修改图书和删除图书等功能。
2. 借阅管理:包括借书、还书、续借和查询借阅记录等功能。
3. 读者管理:包括新增读者、查看读者、修改读者和删除读者等功能。
4. 馆藏管理:包括馆藏统计、图书预约和缺书登记等功能。
下面是图书管理系统的核心功能代码实现:
1. 图书信息管理:
(1)新增图书:
```python
def add_book(self, book):
self.books.append(book)
print("图书添加成功!")
```
(2)查看图书:
```python
def show_books(self):
if not self.books:
print("目前图书馆没有图书!")
else:
for book in self.books:
print(f"书名:{book.name},作者:{book.author},出版社:{book.press},价格:{book.price}")
```
(3)修改图书:
```python
def modify_book(self, name, author, press, price):
for book in self.books:
if book.name == name and book.author == author:
book.press = press
book.price = price
print("图书修改成功!")
break
else:
print("未找到该图书!")
```
(4)删除图书:
```python
def delete_book(self, name, author):
for book in self.books:
if book.name == name and book.author == author:
self.books.remove(book)
print("图书删除成功!")
break
else:
print("未找到该图书!")
```
2. 借阅管理:
(1)借书:
```python
def borrow_book(self, name, author, reader):
for book in self.books:
if book.name == name and book.author == author:
if book.status == "在库":
book.status = "借出"
book.borrower = reader
print("借书成功!")
else:
print("该图书已被借出!")
break
else:
print("未找到该图书!")
```
(2)还书:
```python
def return_book(self, name, author):
for book in self.books:
if book.name == name and book.author == author:
if book.status == "借出":
book.status = "在库"
book.borrower = None
print("还书成功!")
else:
print("该图书未被借出!")
break
else:
print("未找到该图书!")
```
(3)续借:
```python
def renew_book(self, name, author):
for book in self.books:
if book.name == name and book.author == author:
if book.status == "借出":
book.return_date += timedelta(days=30)
print("续借成功!")
else:
print("该图书未被借出!")
break
else:
print("未找到该图书!")
```
(4)查询借阅记录:
```python
def show_borrow_record(self, reader):
record = []
for book in self.books:
if book.borrower == reader:
record.append(book)
if not record:
print("您目前没有借阅记录!")
else:
for book in record:
print(f"书名:{book.name},作者:{book.author},借阅日期:{book.borrow_date},应还日期:{book.return_date},状态:{book.status}")
```
3. 读者管理:
(1)新增读者:
```python
def add_reader(self, reader):
self.readers.append(reader)
print("读者添加成功!")
```
(2)查看读者:
```python
def show_readers(self):
if not self.readers:
print("目前图书馆没有读者!")
else:
for reader in self.readers:
print(f"姓名:{reader.name},性别:{reader.gender},年龄:{reader.age},手机号码:{reader.phone}")
```
(3)修改读者:
```python
def modify_reader(self, name, phone):
for reader in self.readers:
if reader.name == name:
reader.phone = phone
print("读者修改成功!")
break
else:
print("未找到该读者!")
```
(4)删除读者:
```python
def delete_reader(self, name):
for reader in self.readers:
if reader.name == name:
self.readers.remove(reader)
print("读者删除成功!")
break
else:
print("未找到该读者!")
```
4. 馆藏管理:
(1)馆藏统计:
```python
def count_books(self):
total = len(self.books)
borrowed = 0
for book in self.books:
if book.status == "借出":
borrowed += 1
print(f"图书馆共有图书{total}本,其中已借出{borrowed}本,还剩{total-borrowed}本在库。")
```
(2)图书预约:
```python
def reserve_book(self, name, author, reader):
for book in self.books:
if book.name == name and book.author == author:
if book.status == "在库":
book.reserver = reader
print("图书预约成功!")
else:
print("该图书已被预约或借出!")
break
else:
print("未找到该图书!")
```
(3)缺书登记:
```python
def report_missing_book(self, name, author):
for book in self.books:
if book.name == name and book.author == author:
book.status = "缺失"
print("图书缺失登记成功!")
break
else:
print("未找到该图书!")
```