20193103 2019-2020-2 《Python程序设计》实验四报告

课程:《Python程序设计》 班级: 1931 姓名: 陈柏维 学号:20193103 实验教师:王志强 实验日期:2020年6月14日 必修/选修: 公选课

1.实验内容

Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等 本次实践我选择做一个餐厅点菜程序。

2. 实验过程及结果

# coding UTF-8

# version = version_1_2

today_menu = ["今天菜单如下", "1 宫保鸡丁", "2 青椒鸡米粒", "3 白萝卜焖肉", "4 蒜薹腊肉", "5 豆腐包肉 ",

"6 鲤鱼跃龙门", "7 凉拌莲藕", "8 红烧南瓜", "9 大白菜", "10 青菜", "11 荷包蛋(另加2元)", "12 蛋炒饭(10元)"]

price = [0, 0, 12, 0, 0, 10, 13, 0, 9, 11, 14, 0, 10, 0, 15, 0]

def getTodayMenu():

return today_menu

def showTodayMenu(interable):

for today_menu_details in today_menu:

print(today_menu_details)

def showCombineNote():

print("提示:一荤一素10,两素菜9元,一荤两素11,,三素菜10,两荤菜12,两荤一素13,两荤两素14,两荤三素15元")

print("请输入您点餐的编号,编号之间用逗号分开,不同份数之间用空格隔开\n例如输入1,9,10 2,6,8 3,10,谢谢 : ")

def dealWithUserInput():

user_choise = input()

user_choise_list = user_choise.split()

price_total = 0

price_one = 0

choosed_list = []

pay_total = 0

for one_order in user_choise_list:

count_i = count_j = 0

hebaodan = 0

danchaofan = 0

one_order_list = one_order.split(",")

for menu_item in one_order_list:

if menu_item.strip().isdigit():

if int(menu_item.strip()) < 7:

count_j += 1

elif int(menu_item.strip()) < 11:

count_i += 1

elif int(menu_item.strip()) == 11:

hebaodan += 1

elif int(menu_item.strip()) == 12:

danchaofan += 1

choosed_list.append(int(menu_item))

else:

print("您输入的有非数字类型,请重新运行程序,谢谢")

exit()

choosed_list.append(0)

if price[count_i * 4 + count_j] == 0 and "12" not in one_order:

print("您输入的不是一个正确的组合,请重新运行程序, 谢谢")

exit()

else:

price_one = price[count_i * 4 + count_j] + hebaodan * 2 + danchaofan * 10

price_total += price_one

if price_total >= 30:

pay_total = price_total - 4

elif price_total >= 26:

pay_total = price_total - 3

elif price_total >= 20:

pay_total = price_total - 2

else:

pay_total = price_total

print("您预订了 %d 份美食,具体如下: " % len(user_choise_list))

for choosed_item in choosed_list:

if choosed_item == 0:

print()

else:

print(today_menu[choosed_item])

print("您共需要支付 %d 元,谢谢" % pay_total)

print("欢迎进入点餐系统")

today_menu = getTodayMenu()

showTodayMenu(today_menu)

showCombineNote()

dealWithUserInput()

结果:

3. 实验过程中遇到的问题和解决过程

对于各种函数的运用不太熟悉,在函数的定义时由于缩进的错误导致诸多问题,在多层if与else语句的运用时有点乱。

其他(感悟、思考等)

这一个学期的学习,我对python有了更新的认识,python是不同于c的编程语言,python的简短明了让编程变得高效,但我对python的掌握不完全,需多加练习,我相信,在未来的学习与应用中,我可以靠python实现很多,比如对数学难题的解答等,python的学习对我的帮助绝不仅仅是知识的增长,更是解决困难方法的增加。

标签:Python,menu,price,list,item,陈柏维,20193103,print,total

来源: https://www.cnblogs.com/chenbowei/p/13125161.html

python课设带报告_20193103陈柏维《Python程序设计》实验四报告相关推荐

  1. multisim模拟电子钟课设带视频报告下载

    <数字逻辑>课程设计 下载点此去 详情请看视频 multisim模拟电子钟课设带视频报告下载 前言 课程设计目的 数字电子技术课程设计是电子技术基础教学中的一个实践环节,大家 自己通过设计 ...

  2. python课设_校园一卡通

    常州大学Python课设,校园一卡通 一.设计题目:校园一卡通管理系统 二. 设计内容: 用类的方法设计学生一卡通数据类型学生一卡通的基本数据成员至少包括:卡号(学号), 姓名, 性别, 余额,消费总 ...

  3. Python课设实验 之 公交查询系统.(文本导入 字典树 储存.)

    要求: 目录 要求: 第1题  编写一个公交查询系统 随着公交系统的庞大,人们很难得到准确的公交信息,这样给人们的出行就带来了不便.因此,急需一个方便.快捷的公交信息查询方式,本系统提供换乘询功能.路 ...

  4. Python课设实验 之 车票订购系统.(sqlite数据库 储存.)

    要求: 第2题 编写车票订购系统 (1)上网查询郑州到北京.西安.石家庄.济南.太原.武汉的距离以及票价,用数据库保存车次信息. (2)要求输入目的地,能够查询到里程和票价信息. (3)用数据库存储每 ...

  5. Python课设实验 之 爬虫应用——校园网搜索引擎(使用bs4进行数据分析.)

    题目要求: 第3题  爬虫应用--校园网搜索引擎 本题旨在使用Python建立一个适合校园网使用的Web搜索引擎系统,它能在较短时间内爬取页面信息,具有有效准确的中文分词功能,实现对校园网上新闻信息的 ...

  6. 【全套资料.zip下载】数电课设-多功能电子钟数字钟Multisim仿真设计【Multisim仿真+报告+讲解视频.zip下载】

    文章目录 数电课设-多功能电子钟数字钟Multisim仿真设计[Multisim仿真+报告+演示视频.zip] 一.Multisim仿真源文件 二.仿真视频原理讲解 三.原理文档报告 资料下载[Mul ...

  7. 贪吃蛇程序设计报告python_20192116 2019-2020-2 《Python程序设计》实验四报告

    20192116 2019-2020-2 <Python程序设计>实验四报告 课程:<Python程序设计> 班级: 1921 姓名: 饶欢 学号:20192116 实验教师: ...

  8. python编程成果_20192217 2019-2020-2 《Python程序设计》实验四报告

    20192221 2019-2020-2 <Python程序设计>实验四报告 课程:<Python程序设计> 班级:1922班 姓名:程子轩 学号:20192217 实验教师: ...

  9. python实训报告pygame_20192423 2019-2020-2 《Python程序设计》实验四报告

    20192423 2019-2020-2 <Python程序设计>实验四报告 课程:<Python程序设计> 班级: 1924 姓名: 杨斯凌 学号:20192423 实验教师 ...

最新文章

  1. Laravel 任务调度(Console)
  2. HDU4694 Important Sisters
  3. 厦门大学和福州大学计算机专业哪个好,福州大学和厦门大学的土木工程哪个好...
  4. python_循环删除list中的元素,有坑啊!
  5. GoldenGate 基本参数含义
  6. python语言设计学习方向_学好Python开发就业方向有哪些?
  7. python产生随机字符串_Python生成随机字符串
  8. 微机原理与接口耿恒山答案_KYN28-12柜二次系统元器件介绍及接线应用原理(接上篇)...
  9. 初中数学分几个模块_11.初中数学:xy4x+6y5,怎么因式分解?分组配方法再平方差...
  10. 满足客户的需求是要有前提的!
  11. ETL调度开发(5)——连接数据库运行数据库命令子程序
  12. amd cpu安装osx 10.9.2(同样适应intel构架)
  13. 详细的568A和568B线序
  14. html背景为视频教程,HTML+CSS入门 如何将视频设置为网页背景
  15. 计算机大一新生打字速度,打字速度比赛策划书5篇.doc
  16. java cnzz_cnzz统计图标不显示
  17. LTP性能测试工具的使用详解
  18. upload-labs之第一关
  19. C++ 判断路径是否存在,不存在则创建(包含多级创建)
  20. 移动互联网创业方向的思考(绕过腾讯和华为等大公司的战场,打造新型的餐饮平台)

热门文章

  1. masonry的约束应该写在哪里_约束选择
  2. mfc 制作不同的文档模板mdi不同的子窗体_对IT项目售前解决方案制作的一些思考...
  3. go设置后端启动_开源一个go的H5游戏服务端开发框架
  4. 编译安装android7.0,android7.0 源码编译问题总结
  5. PyTorch 学习笔记(五):Finetune和各层定制学习率
  6. AcWing1075. 数字转换(树形DP)题解
  7. 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛——B题 小宝的幸运数组
  8. [转]tensorflow中的gather
  9. 几道比较难的SQL题
  10. tkinter事件机制