text_question #16005
Updated by UserName LastName 11 months ago
'定义图书类 Book,图书信息包含: 编号: bid 书名: name 价格: price 简介: summary 实现构造方法及对象描述方法 __init__ : 初始化方法,接收对应参数初始化对象属性 __str__ : 实现对象描述方法,输出图书信息 定义管理类 BookManagement,用来实现整体业务逻辑。 使用列表做为属性保存图书对象信息 定义 manager 方法管理业务逻辑 对用户输入内容进行输入校验 根据用户输入内容选择不同功能执行 实现菜单方法 __menu,输出下列菜单信息,并返回用户输入的编号 ``` print("*****************************") print("* 图书管理系统 *") print("* 1. 添加新图书信息 *") print("* 2. 通过编号修改图书信息 *") print("* 3. 通过编号删除图书信息 *") print("* 4. 通过书名删除图书信息 *") print("* 5. 通过编号查询图书信息 *") print("* 6. 通过书名查询图书信息 *") print("* 7. 显示所有图书信息 *") print("* 8. 退出系统 *") print("*****************************") ``` 因程序中需要多次对编号及书名进行输入,故抽取方法获取对应的数据。 获取编号方法 __get_bid, 输入编号并返回(字符串类型)eg. b01 获取书名方法 __get_name, 输入书名并返回(字符串类型) 获取书名方法 __get_price, 输入价格并返回(整型) 获取书名方法 __get_summary, 输入简介并返回(字符串类型) 实现添加图书方法 add_book 方法参数为 编号,书名,价格,简介四个参数 输出添加操作的结果提示信息 返回对应结果信息 要求编号不可重复。 实现通过编号修改图书信息方法 modify_book_by_id 参数为 编号 如果图书存在,则进行修改,不存在输出提示信息 返回是否修改成功 实现通过编号删除图书方法 delete_book_by_id 参数为 编号 如果图书存在,则进行删除并输出提示信息,不存在则仅输出提示 返回是否删除成功 实现通过书名删除图书方法 delete_book_by_name 参数为 书名 如果图书存在,则进行删除(同名图书全部删除)并输出提示信息,不存在则仅输出提示 返回是否删除成功 实现通过编号查询图书方法 query_book_by_id 参数为 编号 如果图书存在,则输出图书信息,不存在输出提示信息 返回是否查询成功 实现通过书名查询图书方法 query_book_by_name 参数为 书名 如果图书存在,则输出图书信息(同名图书全部输出),不存在输出提示信息 返回是否查询成功 实现显示所有图书信息方法 show 输出所有图书信息 实现数据存储方法save_data 在退出系统时,将数据保存到 data.txt 文件中 数据保存格式自定义 实现数据加载方法load_data 如果数据文件 data.txt 存在,则从文件中加载数据 如果文件不存在则初始为空'