接着上一次问题,使用函数来封装每个功能:打印主菜单、 显示书目信息、显示库存信息、添加 #目信息和修改图书库存量。 >使用二维列表来保存书目信息,书的信息包括书号、书名、出版时间和价格。 〉使用宇典来保存图书库存信息:书号作为字典的键,库存量作为字典的值。 >根据实际需求,将保存书日信息的列表或保存库存信息的字典作为参数传入到函数中。 用python改善编写
时间: 2024-03-01 16:53:10 浏览: 68
图书库存管理
3星 · 编辑精心推荐
好的,我理解了你的要求,以下是我封装好的函数:
```python
# 打印主菜单
def print_menu():
print("1. 显示书目信息")
print("2. 显示库存信息")
print("3. 添加书目信息")
print("4. 修改图书库存量")
print("0. 退出")
# 显示书目信息
def show_book_info(book_list):
print("{:<10}{:<20}{:<20}{:<10}".format("书号", "书名", "出版时间", "价格"))
for book in book_list:
print("{:<10}{:<20}{:<20}{:<10}".format(book[0], book[1], book[2], book[3]))
# 显示库存信息
def show_stock_info(stock_dict):
print("{:<10}{:<10}".format("书号", "库存量"))
for book_id, stock in stock_dict.items():
print("{:<10}{:<10}".format(book_id, stock))
# 添加书目信息
def add_book_info(book_list):
book_id = input("请输入书号:")
book_name = input("请输入书名:")
publish_time = input("请输入出版时间:")
price = input("请输入价格:")
book_list.append([book_id, book_name, publish_time, price])
# 修改图书库存量
def modify_stock_info(stock_dict):
book_id = input("请输入书号:")
if book_id in stock_dict:
stock = input("请输入库存量:")
stock_dict[book_id] = stock
else:
print("该书不存在!")
# 主函数
def main(book_list, stock_dict):
while True:
print_menu()
choice = input("请输入选项:")
if choice == '1':
show_book_info(book_list)
elif choice == '2':
show_stock_info(stock_dict)
elif choice == '3':
add_book_info(book_list)
elif choice == '4':
modify_stock_info(stock_dict)
elif choice == '0':
break
else:
print("无效选项,请重新输入!")
```
其中,`book_list`是保存书目信息的二维列表,每个元素表示一本书的信息,包括书号、书名、出版时间和价格。`stock_dict`是保存图书库存信息的字典,书号作为键,库存量作为值。
你可以在调用 `main` 函数时,将 `book_list` 和 `stock_dict` 作为参数传入。这样,主函数就可以根据这些参数来显示书目信息、库存信息、添加书目信息和修改库存量了。
阅读全文