学校图书馆新进一批图书,如何用用Python语言编写软件以存储这些图书的信息。图书信息主要指:图书名称,出版社,数量,单价。软件应具备以下主要功能: (1) 数据输入:输入图书信息。 (2) 数据保存:能够将输入的信息以文件的形式保存到计算机中。 (3) 数据查询:能够按照“图书名称”查询图书信息,也能够按照“单价”查询图书信息。 (4) 数据修改:当输入数据出现误操作时,事后可以更改。 软件至少应具有“数据输入”、“保存”、“查询”、“修改”、“退出”5项菜单。
时间: 2024-03-22 19:38:11 浏览: 97
可以用Python语言编写一个图书信息管理系统,以下是一个基本的框架:
```python
import csv
def main():
books = []
load_books(books)
while True:
print_menu()
choice = input("请选择操作:")
if choice == "1":
add_book(books)
elif choice == "2":
save_books(books)
elif choice == "3":
find_book(books)
elif choice == "4":
update_book(books)
elif choice == "5":
break
else:
print("输入错误,请重新输入")
print("感谢使用图书信息管理系统!")
def load_books(books):
try:
with open("books.csv", "r", encoding="utf-8") as f:
reader = csv.reader(f)
for row in reader:
books.append(row)
except FileNotFoundError:
print("未找到数据文件,将创建新文件。")
def save_books(books):
with open("books.csv", "w", encoding="utf-8", newline="") as f:
writer = csv.writer(f)
writer.writerows(books)
print("保存成功!")
def add_book(books):
name = input("请输入图书名称:")
publisher = input("请输入出版社:")
quantity = input("请输入数量:")
price = input("请输入单价:")
book = [name, publisher, quantity, price]
books.append(book)
print("添加成功!")
def find_book(books):
keyword = input("请输入查询关键字:")
results = []
for book in books:
if keyword in book[0] or keyword in book[3]:
results.append(book)
if results:
print("查询结果如下:")
for book in results:
print(book)
else:
print("未找到符合条件的图书。")
def update_book(books):
name = input("请输入要修改的图书名称:")
for book in books:
if book[0] == name:
book[1] = input("请输入出版社:")
book[2] = input("请输入数量:")
book[3] = input("请输入单价:")
print("修改成功!")
return
print("未找到该图书。")
def print_menu():
print("=" * 30)
print("图书信息管理系统")
print("-" * 30)
print("1. 添加图书")
print("2. 保存数据")
print("3. 查询图书")
print("4. 修改图书")
print("5. 退出系统")
print("=" * 30)
if __name__ == "__main__":
main()
```
此系统使用CSV文件来保存图书信息,可以使用Excel或文本编辑器打开。运行程序后,用户可以选择不同的操作,包括添加图书、保存数据、查询图书、修改图书和退出系统。在添加图书时,用户需要输入图书名称、出版社、数量和单价。在查询图书时,用户可以根据图书名称或单价进行查询。在修改图书时,用户需要输入要修改的图书名称,并可以修改图书的出版社、数量和单价。保存数据将当前所有图书信息保存到CSV文件中。
阅读全文