Python 代码实战:从零开始构建一个简单的图书管理系统250
本文将详细介绍如何使用 Python 编写一个简单的图书管理系统,涵盖了程序设计的基本要素,例如数据结构、文件操作、用户界面设计等。我们将从零开始,逐步构建这个系统,并附带完整的 Python 代码作为参考。 通过这个例子,读者可以学习到 Python 在实际应用中的技巧,并加深对 Python 编程的理解。
这个图书管理系统将具备以下功能:
添加新书:输入图书的标题、作者、ISBN 和出版日期等信息。
查询图书:根据书名、作者或 ISBN 查询图书信息。
删除图书:根据 ISBN 删除指定的图书。
显示所有图书:列出当前系统中所有图书的信息。
保存数据:将图书信息保存到文件中,以便下次启动时加载。
加载数据:从文件中加载之前保存的图书信息。
为了简化系统,我们将使用文本文件存储图书信息。 当然,在实际应用中,可以使用数据库(例如SQLite, PostgreSQL)来提高效率和数据安全性,但这会增加系统的复杂度。本例旨在突出核心编程概念,而非数据库操作。
我们将使用 Python 的内置模块,例如 `json` 模块来处理数据序列化和反序列化,以及 `os` 模块来进行文件操作。 此外,我们将使用简单的命令行界面 (CLI) 来与用户交互,避免了复杂的图形用户界面 (GUI) 设计。
下面是 Python 代码的实现:```python
import json
import os
BOOK_DATA_FILE = ""
def load_books():
"""从文件中加载图书数据"""
if (BOOK_DATA_FILE):
with open(BOOK_DATA_FILE, "r") as f:
try:
return (f)
except :
return [] # 处理文件损坏的情况
else:
return []
def save_books(books):
"""将图书数据保存到文件"""
with open(BOOK_DATA_FILE, "w") as f:
(books, f, indent=4)
def add_book(books):
"""添加新书"""
title = input("请输入书名: ")
author = input("请输入作者: ")
isbn = input("请输入ISBN: ")
published_date = input("请输入出版日期 (YYYY-MM-DD): ")
({"title": title, "author": author, "isbn": isbn, "published_date": published_date})
print("图书已添加成功!")
def search_book(books):
"""查询图书"""
keyword = input("请输入搜索关键词 (书名, 作者, 或 ISBN): ")
results = [book for book in books if () in book["title"].lower() or () in book["author"].lower() or () in book["isbn"].lower()]
if results:
for book in results:
print(f"书名: {book['title']}, 作者: {book['author']}, ISBN: {book['isbn']}, 出版日期: {book['published_date']}")
else:
print("未找到相关图书!")
def delete_book(books):
"""删除图书"""
isbn = input("请输入要删除图书的ISBN: ")
books[:] = [book for book in books if book["isbn"] != isbn]
print("图书已删除!")
def display_all_books(books):
"""显示所有图书"""
if books:
for book in books:
print(f"书名: {book['title']}, 作者: {book['author']}, ISBN: {book['isbn']}, 出版日期: {book['published_date']}")
else:
print("当前没有图书!")
def main():
books = load_books()
while True:
print("图书管理系统")
print("1. 添加新书")
print("2. 查询图书")
print("3. 删除图书")
print("4. 显示所有图书")
print("5. 退出")
choice = input("请选择操作: ")
if choice == "1":
add_book(books)
elif choice == "2":
search_book(books)
elif choice == "3":
delete_book(books)
elif choice == "4":
display_all_books(books)
elif choice == "5":
save_books(books)
break
else:
print("无效的选择!")
if __name__ == "__main__":
main()
```
这段代码提供了一个基本的图书管理系统。 读者可以运行这段代码,并尝试添加、查询、删除和显示图书。 记住在运行代码前,确保你的 Python 环境已经正确配置。
这个例子只是 Python 应用的一个入门级示例。 通过改进和扩展这个系统,你可以学习到更多高级的编程技巧,例如使用数据库、GUI 框架等等。 希望本文能够帮助你更好地理解 Python 编程,并激发你学习的热情!
2025-04-11
Java数组元素:从基础到高级操作的深度解析
https://www.shuihudhg.cn/134539.html
PHP Web应用的安全基石:全面解析数据库SQL注入防御
https://www.shuihudhg.cn/134538.html
Python函数入门到进阶:用简洁代码构建高效程序
https://www.shuihudhg.cn/134537.html
PHP中解析与提取代码注释:DocBlock、反射与AST深度探索
https://www.shuihudhg.cn/134536.html
Python深度解析与高效处理.dat文件:从文本到二进制的实战指南
https://www.shuihudhg.cn/134535.html
热门文章
Python 格式化字符串
https://www.shuihudhg.cn/1272.html
Python 函数库:强大的工具箱,提升编程效率
https://www.shuihudhg.cn/3366.html
Python向CSV文件写入数据
https://www.shuihudhg.cn/372.html
Python 静态代码分析:提升代码质量的利器
https://www.shuihudhg.cn/4753.html
Python 文件名命名规范:最佳实践
https://www.shuihudhg.cn/5836.html