利用python写一个简易的图书管理系统,包括账号,密码,查询图书,借阅图书,归还图书,退出系统
时间: 2024-03-18 09:42:13 浏览: 65
好的,我可以帮您实现这个简易的图书管理系统。首先,我们需要安装Python的数据库连接工具——MySQLdb,以及一个MySQL数据库,用来存储图书信息和用户信息。在安装完成这些工具后,我们可以开始编写代码了。
首先,我们需要建立一个名为“library”的数据库,包括两张表:user和book。其中,user表用来存储用户信息,包括用户ID、用户名和密码;book表用来存储图书信息,包括图书ID、图书名称、作者、出版社、出版日期和状态(是否已被借阅)。
接下来是代码实现:
```python
import MySQLdb
# 数据库连接信息
host = 'localhost'
user = 'root'
password = '123456'
database = 'library'
# 连接数据库
db = MySQLdb.connect(host, user, password, database)
cursor = db.cursor()
# 登录
def login():
while True:
username = input("请输入用户名:")
password = input("请输入密码:")
sql = "SELECT * FROM user WHERE username='%s' AND password='%s'" % (username, password)
cursor.execute(sql)
result = cursor.fetchone()
if result:
print("登录成功!")
break
else:
print("用户名或密码错误,请重新输入!")
# 查询图书
def search_book():
while True:
keyword = input("请输入要查询的关键词:")
sql = "SELECT * FROM book WHERE book_name LIKE '%%%s%%' OR author LIKE '%%%s%%' OR publisher LIKE '%%%s%%'" % (keyword, keyword, keyword)
cursor.execute(sql)
results = cursor.fetchall()
if results:
print("查询结果如下:")
for result in results:
print(result)
break
else:
print("没有找到符合条件的图书,请重新输入关键词!")
# 借阅图书
def borrow_book():
while True:
book_id = input("请输入要借阅的图书ID:")
sql = "SELECT * FROM book WHERE book_id='%s' AND status='0'" % book_id
cursor.execute(sql)
result = cursor.fetchone()
if result:
sql = "UPDATE book SET status='1' WHERE book_id='%s'" % book_id
cursor.execute(sql)
db.commit()
print("借阅成功!")
break
else:
print("该图书已被借阅或不存在,请重新输入!")
# 归还图书
def return_book():
while True:
book_id = input("请输入要归还的图书ID:")
sql = "SELECT * FROM book WHERE book_id='%s' AND status='1'" % book_id
cursor.execute(sql)
result = cursor.fetchone()
if result:
sql = "UPDATE book SET status='0' WHERE book_id='%s'" % book_id
cursor.execute(sql)
db.commit()
print("归还成功!")
break
else:
print("该图书未被借阅或不存在,请重新输入!")
# 退出系统
def exit_system():
db.close()
print("已退出系统!")
# 主程序
def main():
login()
while True:
print("请选择操作:")
print("1. 查询图书")
print("2. 借阅图书")
print("3. 归还图书")
print("4. 退出系统")
choice = input()
if choice == '1':
search_book()
elif choice == '2':
borrow_book()
elif choice == '3':
return_book()
elif choice == '4':
exit_system()
break
else:
print("无效的选择,请重新输入!")
if __name__ == "__main__":
main()
```
以上代码实现了简易的图书管理系统,包括账号密码登录、查询图书、借阅图书、归还图书和退出系统等功能。需要注意的是,为了保证用户信息的安全,应该使用加密的方式存储密码,此处省略加密过程,仅作演示之用。
阅读全文