1、使用本章介绍的知识设计一个“书籍出租管理系统",该系统包括以下功能。(1)菜单项“1”:显示书籍(包括书籍名称、价格和借出状态)。
(2)菜单项“2”:增加书籍(包括书籍名称和价格)。
(3)菜单项“3”:借出书籍(包括借出书籍名称和借出天数)。
(4)菜单项“4”:归还书籍(包括归还书籍名称和应付的租书费)。
(5)菜单项“5":统计书籍(包括借出书籍册数、未借出书籍册数和总册数)。
(6)菜单项“-1”:退出系统。
分析:
(1)定义书籍类Book,包括书籍名称、书籍价格和书籍状态。
(2)定义书籍管理类BookManager,包括构造方法_init_()、菜单方法 Menu()、查询书籍方法show_all_books()、添加书籍方法 add_books()、借出书籍方法 lend_books()、归还书籍方法return_books()、统计书籍方法 count_books()和检查书籍是否存在方法check books(),分别完成书籍初始化、创建菜单、查询书籍、添加书籍、借出书籍、归还书籍、统计书籍和检查书籍等功能。
(3)书籍存储在书籍管理类BookManager的书籍列表 books中。

#定义书籍类Book.
class Book:#构造方法.def __init__(self,Name,Price,State):self.Name = Name                          #书籍名称.self.Price = Price                       #书籍价格.self.State = State                       #书籍状态.def __str__(self):State = '已借出'if self.State == 1:State = '未借出'return '名称:《%s》, 单价: %.2f元,  状态: %s' % (self.Name,self.Price,State)#定义书籍管理类bookManager.
class BookManager:#书籍列表books,每个元素是一个书籍对象.books = []#构造方法.def init(self):self.books.append(Book('茶花女',32.6,0))self.books.append(Book('傲慢与偏见',41.8,1))self.books.append(Book('罗密欧与朱丽叶',29.5,1))#菜单.def Menu(self):self.init()print('\"书籍出租管理系统\"菜单:')print('1.显示书籍')print('2.增加书籍')print('3.借出书籍')print('4.归还书籍')print('5.统计书籍')print('-1.退出系统')while (True):menu_item = int(input('******请输入菜单编号: '))if menu_item == 1:self.show_all_books()elif menu_item == 2:self.add_books()elif menu_item == 3:self.lend_books()elif menu_item == 4:self.return_books()elif menu_item == 5:self.count_books()elif menu_item == -1:print('谢谢使用!')breakelse:print("请输入-1,1~5范围的菜单项编号!")#1. 查询并显示所有书籍.def show_all_books(self):for book in self.books:print(str(book))#2. 添加书籍.def add_books(self):book_name = input('请输入添加书籍名称: ')ret = self.check_books(book_name)if ret != None:print('书籍已经存在!')else:book_price = float(input('请输入书籍价格: '))new_book = Book(book_name,book_price,1)self.books.append(new_book)print('添加书籍成功!')#3. 借出书籍.def lend_books(self):book_name = input('请输入借出书籍的名称: ')ret = self.check_books(book_name)if ret != None:if ret.State == 0:print('您要借的书籍已经借出去了')else:ret.State = 0print('借书成功!')else:print('您要借的书籍不存在!')#4. 归还书籍.def return_books(self):book_name = input('请输入归还书籍名称: ')ret = self.check_books(book_name)if ret == None:print('您要归还的书籍不存在!')else:if ret.State == 1:print('您要归还的书籍未借出!')else:lend_days = int(input('请输入借书天数: '))fee = round(ret.Price * lend_days * 0.1,2)           #保留2位小数.print('借出 %d 天,应付租书费%.2f元. ' % (lend_days,fee))while True:pay = float(input('请输入支付金额: '))if pay < fee:print('您所输入的金额不够!')else:breakif pay >= fee:print('找零: %.2f元.' % (pay - fee))ret.State = 1print('还书成功!')#5. 统计书籍状况.def count_books(self):lend_count = 0not_lend_count = 0for item in self.books:if item.State == 0:lend_count = lend_count + 1else:not_lend_count = not_lend_count + 1print("已借出书籍: %d 册."%lend_count)print("未借出书籍: %d 册." %not_lend_count)print("总书籍: %d 册." %len(self.books))#检查书籍是否存在.def check_books(self,Name):for book in self.books:if book.Name == Name:return bookelse:return Noneif __name__  ==  "__main__":#创建BookManager类的实例.manager = BookManager()#调用Menu()方法.manager.Menu()

2、设计一个“超市进销存管理系统”,要求如下:
(1)系统包括7种操作,分别是:1.查询所有商品;2.添加商品;3.修改商品;4.删除商品;5.卖出端口;6.汇总;-1.退出系统。
(2)选择操作序号“1”,显示所有商品。
(3)选择操作序号“2”,添加新的商品(包括商品名称、数量和进货价格)。
(4)选择操作序号“3",修改商品。
(5)操作序号“4”,删除商品。
(6)选择操作序号“5,卖出商品(包括商品名称、数量和售出价格)。
(7)选择操作序号“6",汇总当天卖出商品,包括每种销售商品名称、数量、进货总价、销售总价等。
(8)选择操作序号“-1”,退出系统。

import sysclass product:name=""  #商品名称in_num=0  #添加商品的数量storage=0  #商品库存in_price=0  #添加商品的价格sold_num=0  #卖出商品数量sold_price=0  #卖出商品价格in_sum=0out_sum=0def show(self):if self.storage>0:print("商品名称:",self.name,"商品库存:",self.storage)"""构造函数"""def __init__(self,name,in_num,in_price):self.name=nameself.in_num=in_numself.storage=in_numself.in_price=in_priceself.in_sum=in_num*in_pricedef sold(self,sold_num,sold_price):if sold_num>self.storage:print("出售数目大于库存!")else:self.sold_num+=sold_numself.storage -= sold_numself.out_sum += sold_num * sold_pricedef show_soldproduct(self):if self.sold_num>0:print("商品名称:",self.name,"商品库存:",self.storage,"进货总价:",self.in_sum,"销售总价:",self.out_sum)if __name__ == "__main__":def showmenu():print("************************************************************************")print("************************欢迎进入超市进销存管理系统*************************")print("1. 查询所有商品;2.增加新的商品;3.卖出商品;4.删除商品;5.汇总;-1.退出。")print("************************************************************************")option = int(input("请输入您需要的服务数字:"))if option == 1:for item in product_list:item.show()if option == 2:name=input("请输入商品名称:")in_num=int(input("请输入商品数量:"))in_price=int(input("请输入商品单价:"))new_product=product(name,in_num,in_price)product_list.append(new_product)if option == 3:name=input("请输入卖出的商品名称:")sold_num=int(input("请输入卖出的商品数量:"))sold_price=int(input("请输入卖出的商品的价格:"))for item in product_list:if item.name == name:item.sold(sold_num,sold_price)if option == 4:name=input("请输入想要删除的商品名称:")for item in product_list:if item.name == name:item.storage=0if option == 5:for item in product_list:item.show_soldproduct()if option == -1:sys.exit()product_list=[]a=product("test",0,0,)product_list.append(a)while True:showmenu()

python 实验8相关推荐

  1. python实验报告代写_TensorFlow作业代写、代做Python程序语言作业、代写github课程作业、Python实验作业代写...

    TensorFlow作业代写.代做Python程序语言作业.代写github课程作业.Python实验作业代写 日期:2019-07-10 10:34 Python Practical Examine ...

  2. 代写python作业费用标准_代做159.272作业、代写Programming Paradigms作业、代做Python实验作业、代写Java/c++编程作业代写Database|代做R...

    代做159.272作业.代写Programming Paradigms作业.代做Python实验作业.代写Java/c++编程作业代写Database|代做RComputational Thinkin ...

  3. python实验项目_Python3实验 项目结构(文件操作)

    Python实验 项目结构(文件操作) 一.代码 # 姓名:池鱼奥 # 学号:201700000001 import os import time def make_project(project_n ...

  4. 华中农业大学python实验题

    知识汇总 博客 地址 内容 华中农业大学Python期末速成笔记 https://blog.csdn.net/m0_46521785/category_10626330.html 华中农业大学pyth ...

  5. 2022年5月22日-Taylor级数的python实验

    Taylor级数的python实验 引言 众所周知,对于任意一个函数,我们可以选用一组基函数拟合这个函数.什么,你不知道!好吧,没有关系,这是一个很简单的东西,相信在我的解释下,你很快就懂了! 泰勒级 ...

  6. Python实验四:Python程序设计之文件

    微信公众号:创享日记 发送:python实验 获取完整清晰报告和源码以及其它资源 前些天发现了一个巨牛的人工智能学习电子书,通俗易懂,风趣幽默,无广告,忍不住分享一下给大家.(点击跳转人工智能学习资料 ...

  7. Python实验报告一 python基础试题练习

    实验内容: 编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变.(提示:使用切片.) 2.编写程序,输入两个集合 setA 和 setB,分别输出它们 ...

  8. python实验指导书燕山大学答案_Python实验指导书课件.doc

    Python实验指导书 马 川 燕山大学计算机教学实验中心 2017.5 目录 目录 实验一: PYTHON 程序设计之初窥门径 ................................... ...

  9. python实验---猜谜语闯关游戏

    python实验-猜谜语闯关游戏 题目 ​ 设计并实现一款猜谜语的闯关游戏.玩家根据给出的谜面,输入谜底.游戏根据玩家给出的谜底正确与否,决定是否进入下一关. 如果玩家猜错,则闯关失败.如果玩家猜对, ...

  10. python实验指导书_Python实验指导书

    Python实验指导书 Python实验指导书 马 川 燕山大学计算机教学实验中心 2017.5 目录 实验一:Python程序设计之初窥门径2 实验二:Python程序设计之结构与复用7 实验三:P ...

最新文章

  1. java编写最大公约数_Java编写最大公约数和最小公倍数
  2. 原来JScript中的关键字'var'还是有文章的
  3. UA MATH566 统计理论 推导卡方拟合优度检验
  4. 第二十期:想吃透监控系统,就这一篇够不够?
  5. elementui图片上传php,vue+element-ui+富文本————图片上传
  6. 计算机分数的简便运算,分数的简便运算和分数的解方程
  7. [COURSE_PTHE] 4. 枚举
  8. 发布一个MsBuild任务组件-可用于同时发布多个网站
  9. C#通过COM组件调用IDL的pro程序
  10. Android对话框
  11. 2021届成都高考一诊成绩查询,2021届成都一诊来了!你想知道的,都在这儿!(附2020年985/211高校在川调档线及位次)...
  12. 计算机密码最满足安全的要求,win10怎么设置登录密码保证电脑安全性
  13. 用Python合并多个txt文件
  14. arm64汇编中orr 和 mov的交替使用
  15. 血手耳机与笔记本驱动冲突
  16. odroid xu4安装ROS melodic+远程登录+Roboware 开发
  17. 双硬盘SSD+HDD安装双系统win10+Ubuntu16.04
  18. 怎么用计算机计算年月份,win7计算器怎么计算某年某月某日到某年某 – 手机爱问...
  19. iHRM 人力资源管理系统_第9章_文件上传与PDF报表入门_第二节_PDF报表入门
  20. java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0

热门文章

  1. eclipse文件到idea乱码问题
  2. 【StarOS低代码教程系列02】——十分钟制作电影票房管理后台
  3. PHP trim()函数 去除字符串两侧的空白字符
  4. 百丽季燕利:从补货场景,看企业协同在线|数字思考者50人
  5. spdlog 封装为 DLL
  6. 程序员接单渠道介绍,月入30K的方法我找到了!
  7. Python爬虫 —— 使用BeautifulSoup4解析HTML文档
  8. 参考GMT中文社区绘制区域CORS站的站点分布和速度场图(脚本)
  9. Linux环境下输入ifconfig不显示ens33的解决方法
  10. 数仓项目之财务年终账单