用python写项目之图书管理系统

2023-05-12,,

1、功能介绍:

(1)、添加新书:输入要添加的书名、存放的书架号、价格。

(2)、修改书架:输入要书名,然后对其修改书架号、价格

(3)、删除书架:输入书名,然后对应删除书名、书架号、价格

(4)、查询书架:展示所有的书籍

(5)、退出系统:退出系统

2、代码

# 创建一个dict,存放图书
books={"倚天屠龙记":{"id":1,"price":100.00},
"好吗好的":{"id":2,"price":200.00},
"告别薇安":{"id":3,"price":300.00},
"穆斯林的葬礼":{"id":4,"price":400.00}
}
# 创建一个list
menu=["1、添加新书","2、修改书架","3、删除书架","4、查询书架","5、退出系统"] # 系统启动+菜单展示
def start():
print("欢迎使用图书馆管理系统")
# 菜单展示
for i in menu:
print("**%s**" % i)
choose() # 功能选择
def choose():
choosenum = input("请选择一个功能:")
# 添加新书
if choosenum=="":
print("添加新书中....")
while True:
add_bookname = input("输入要添加的书名:")
# 如果图书馆已经有这本书
if ifexist(bookname=add_bookname):
s=input("已经有这本书了!\n请输入0重新选择功能,输入1继续添加新书:")
# 输入0回到choose()
if s=="":
return choose()
# 输入1停止剩余的语句,继续下一次的循环
elif s=="":
continue
else:
print("输入有误,已退出!")
# 退出系统
exit()
# 如果图书馆没有这本书,跳出while循环
else:
break
while True:
add_bookid = input("请输入要放得书架号:")
# 如果书架号已经被占用
if ifexist(bookid=add_bookid):
s=input("这个书架已经被占用了!\n请输入0重新选择功能,输入1继续添加书架:")
if s=="":
return choose()
elif s=="":
continue
else:
print("输入有误,已退出!")
exit()
# 如果书架号没有被占用,跳出while循环
else:
break
# 输入书的价格
add_bookprice=input("请输入书的价格:")
# 创建一个dict
add_bookidprice={"id":add_bookid,"price":add_bookprice}
# 往图书馆中添加新书
newbook(add_bookname,**add_bookidprice)
# 展示所有的图书
showbooks(**books)
# 修改书架
elif choosenum=="":
# 输入书名
update_bookname=input("请输入要修改的书名:")
# 对着书名,修改其书架号和价格
updatebook(update_bookname)
# 删除书架
elif choosenum=="":
# 输入书名
del_bookname = input("请选择要删除的书名:")
# 删除这本书的所有的记录
deletebook(del_bookname)
# 查询书架
elif choosenum=="":
# 展示所有的图书
showbooks(**books)
# 退出系统
elif choosenum=="":
print("退出系统!")
# 退出系统
exit()
else:
# 输入的功能不是1、2、3、4、5,抛出“输入的参数有误”
if isinstance(choosenum, str):
raise TypeError("输入参数有误!")
else:
# 退出系统
exit() # 修改书架
def updatebook(bookname):
# 查看书本是否已经存在
if ifexist(bookname=bookname):
num=input("你想修改什么呢?输入1修改书架号,输入2修改价格,输入其他退出:")
# 修改书的书架号
if num=="":
while True:
updatebook_id=input("你想放几号书架?:")
# 查看书架号是否被占用
if ifexist(bookid=updatebook_id):
print("这个书架已经满了!")
# 停止剩下的语句,继续下一次循环
continue
else:
# 修改书架号
books[bookname]["id"]=int(updatebook_id)
print("成功修改书架号!")
# 展示所有的图书
showbooks(**books)
# 修改书的价格
elif num=="":
updatebook_price=float(input("输入新的价格:"))
# 修改输的价格
books[bookname]["price"]=updatebook_price
print("成功修改价格!")
# 展示所有的图书
showbooks(**books)
else:
# 退出系统
exit()
# 图书馆没有这本书,返回主键面
else:
print("图书馆没有这本书!")
return choose()
#删除书架
def deletebook(bookname):
# 查看图书馆是否有这本书
if ifexist(bookname=bookname):
# 删除这本书
books.pop(bookname)
print("已删除%s" % bookname)
# 返回主键面
return choose()
else:
print("图书馆没有这本书!")
return choose() # 新书存入图书馆
def newbook(bookname,**kwargs):
# 新书存入图书馆中
books[bookname]=kwargs
print("添加成功了!") # 展示图书馆的所有的图书
def showbooks(**kwargs):
# 遍历books
for i in kwargs:
print("name=%s,id=%d,price=%.2f" % (i,int(books[i]["id"]),float(books[i]["price"])))
# 遍历完返回主键面
return choose() # 判断书名或者id是否存在于图书馆系统中
def ifexist(bookname='',bookid=''):
# 书名不为空
if bookname != '':
# 如果图书馆有这本书,返回True
if bookname in books:
return True
# 图书馆没有这本书,返回False
else:
return False
else:
# 遍历一个dict
for i in books:
# 如果输入参数bookid等于某个图书馆书架的id,返回True
if int(bookid)==books[i]['id']:
return True
return False
# 程序启动
start()

结果演示:

**1、添加新书**
**2、修改书架**
**3、删除书架**
**4、查询书架**
**5、退出系统**
请选择一个功能:1
添加新书中....
输入要添加的书名:哈哈
请输入要放得书架号:4
这个书架已经被占用了!
请输入0重新选择功能,输入1继续添加书架:1
请输入要放得书架号:6
请输入书的价格:50
添加成功了!
name=倚天屠龙记,id=1,price=100.00
name=好吗好的,id=2,price=200.00
name=告别薇安,id=3,price=300.00
name=穆斯林的葬礼,id=4,price=400.00
name=哈哈,id=6,price=50.00
请选择一个功能:2
请输入要修改的书名:哈哈
你想修改什么呢?输入1修改书架号,输入2修改价格,输入其他退出:1
你想放几号书架?:2
这个书架已经满了!
你想放几号书架?:7
成功修改书架号!
name=倚天屠龙记,id=1,price=100.00
name=好吗好的,id=2,price=200.00
name=告别薇安,id=3,price=300.00
name=穆斯林的葬礼,id=4,price=400.00
name=哈哈,id=7,price=50.00
请选择一个功能:3
请选择要删除的书名:哈哈
已删除哈哈
请选择一个功能:4
name=倚天屠龙记,id=1,price=100.00
name=好吗好的,id=2,price=200.00
name=告别薇安,id=3,price=300.00
name=穆斯林的葬礼,id=4,price=400.00
请选择一个功能:5
退出系统!

Process finished with exit code 0

python项目图书管理系统的相关教程结束。

《用python写项目之图书管理系统.doc》

下载本文的Word格式文档,以方便收藏与打印。