如何使用python写一个简单完整的图书管理系统
时间: 2023-05-22 09:02:35 浏览: 189
一个简单的图书管理系统可以使用 Python 和 MySQL 数据库实现。下面是代码:
1、安装Python和pymysql:
pip install pymysql
2、创建数据库:
CREATE DATABASE library;
3、创建书籍表
CREATE TABLE books (
id INT(11) PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100),
author VARCHAR(100),
published_year INT(4)
);
4、编写 Python 代码:
import pymysql
# 连接数据库
db = pymysql.connect("localhost", "username", "password", "library")
# 创建游标
cursor = db.cursor()
# 定义添加书籍的函数
def add_book():
# 获取用户输入的书籍信息
title = input("请输入书名:")
author = input("请输入作者名:")
published_year = input("请输入出版年份:")
# 构造插入语句
sql = "INSERT INTO books(title, author, published_year) VALUES ('%s', '%s', '%s')" % (title, author, published_year)
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
print("添加成功!")
except:
# 如果发生错误则回滚
db.rollback()
print("添加失败!")
# 定义删除书籍的函数
def del_book():
# 获取用户输入的书籍ID
book_id = input("请输入要删除的书籍ID:")
# 构造删除语句
sql = "DELETE FROM books WHERE id = %s" % book_id
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
print("删除成功!")
except:
# 如果发生错误则回滚
db.rollback()
print("删除失败!")
# 定义查询书籍的函数
def query_book():
# 获取所有书籍信息
sql = "SELECT * FROM books"
try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录
results = cursor.fetchall()
# 循环遍历所有记录,并输出
for row in results:
print("ID:%d, 书名:%s, 作者:%s, 出版年份:%d" % (row[0], row[1], row[2], row[3]))
except:
print("查询失败!")
# 主程序入口
if __name__ == '__main__':
while True:
# 输出菜单
print("1. 添加书籍")
print("2. 删除书籍")
print("3. 查询书籍")
print("4. 退出")
# 获取用户输入的选项
choice = input("请选择操作:")
# 根据用户选项调用相应的函数
if choice == '1':
add_book()
elif choice == '2':
del_book()
elif choice == '3':
query_book()
elif choice == '4':
break
else:
print("输入有误,请重新输入!")
# 关闭数据库连接
db.close()
注意:此代码只是一个简单的图书管理系统示例,实际应用中可能需要更复杂的代码和功能。
阅读全文