list_n = []# 全局变量
class Books(object):# 定义类名
def add_book(self):# 方法1 像列表里面添加书籍
print("添加图书")
n_name = input("请输入书籍书籍名称")
n_author = input("请输入作者名称")
n_price = input("请输入书籍价格")
n_number = input("请输入书籍数量")
for i in list_n:# 重复的话跳出循环
if i["name"] == n_name:
print("已有该书籍")
return
info1 = {} # 定义空字典
info1["name"] = n_name # 向字典里面添加书籍内容
info1["author"] = n_author
info1["price"] = n_price
info1["number"] = n_number
list_n.append(info1) # 把字典的内容添加进入列表内
print(list_n)# 输出列表
print("添加成功")#提示添加成功
def delete_book(self):# 方法二 删除书籍
global list_n #更改全局变量 列表
n = 0 #定义标志位
print("删除图书")
d_name = input("请输入删除书籍的书名")
for i in list_n:#遍历列表里的字典(例表里面的每一项为字典)
if i["name"] == d_name:#判断是否有该书籍
del list_n[n]
print("删除成功")
print(list_n)
return
else:
n += 1
else:
print("没有该书籍")
def alter_book(self):# 方法三 修改图书内容
global list_n
print("修改图书")
n = int(input("请输入要修改的序号从零开始输入"))
n_name = input("请输入书名")
for i in list_n: # 判断 是否有该书籍
if i["name"] == n_name:
print("已有该书籍不能修改")
return
if 0 <= n and n < len(list_n): # 开始操作 修改书籍的信息
list_n[n]["name"] = n_name
list_n[n]["author"] = input("请重新输入作者")
list_n[n]["price"] = input("请重新发输入价格")
list_n[n]["number"] = input("请重新输入数量")
else:
print("输入的序号违法")
return
print(list_n)
print("修改成功")
def find_book(self): # 方法四 查找图书
print("查找图书")
book = input("请输入查找的书籍名称") #输入查找的书籍名称
for i in list_n:
if i["name"] in book:
print("书名:%s 作者:%s 价格:%s 数量%s" % (i["name"],i["author"],i["price"],i["number"]))
return
else:
print("没有该书籍")
def show_book(self): #方法四 显示所有书籍
print("显示所有书籍")
for i in list_n:
print("书名:%s 作者:%s 价格:%s 数量%s" % (i["name"], i["author"], i["price"], i["number"]))
print("显示完毕")
def exit_book(self):
exit(0)
def menu(self): # 菜单
while True: #死循环
print(
"====================\n"
"\t图书管理系统\n"
"\t1.添加图书\n"
"\t2.删除图书\n"
"\t3.修改图书\n"
"\t4.查找图书\n"
"\t5.显示所有书籍信息\n"
"\t0.退出系统\n"
"====================="
)
num = int(input("请输入选项"))
if num == 1:
self.add_book()# 调用命令
elif num == 2:
self.delete_book()
elif num == 3:
self.alter_book()
elif num == 4:
self.find_book()
elif num == 5:
self.show_book()
elif num == 0:
self.exit_book()
else:
print("输入有误请重新输入")
book = Books() #创建对象
book.menu() # 调用方法