# -*- coding: utf-8 -*-
# @Time : 2018/12/25 14:24
# @Author : Endless-cloud
# @Site :
# @File : day05 -day 8课后作业.py
# @Software: PyCharm
'''
# 1.有如下变量(tu是个元祖),请实现要求的功能
# tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
# a. 讲述元祖的特性
# b. 请问tu变量中的第一个元素 "alex" 是否可被修改?
# c. 请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 "Seven"
# d. 请问tu变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 "Seven" '''
# tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
# a
# 元祖的儿子辈不能改,但是孙子辈的可能能做修改
# b
# 不能修改
# c
# k2 的值是字典类型 可以被修改
# tu[1][2]['k2'].append('seven')
# print(tu)
# d 不能修改,因为里面是元祖
'''
# 2.字典dic,dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
# 请循环输出所有的key
# 请循环输出所有的value
# c. 请循环输出所有的key和value
# d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
# e. 请在修改字典中 "k1" 对应的值为 "alex",输出修改后的字典
# f. 请在k3对应的值中追加一个元素 44,输出修改后的字典
# g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典 '''
#
# dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
# a for i in dic:
# print(i)
# b
# for i in dic.values():
# print(i)
# c
# for i , j in dic.items():
# print(i , j)
# d
# dic['k4']=['v4']
# print(dic)
# e
# dic['k1'] = 'alex'
# print(dic)
# f
# dic['k3'].insert(1,'18')
# print(dic)
# f
# dic['k3'].append('44')
# print(dic)
'''
# 3.av_catalog = {
# "欧美":{
# "www.太白.com": ["很多免费的,世界最大的","质量一般"],
# "www.alex.com": ["很多免费的,也很大","质量比yourporn高点"],
# "oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
# "hao222.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
# },
# "日韩":{
# "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
# },
# "大陆":{
# "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
# }
# }
# a,给此 ["很多免费的,世界最大的","质量一般"]列表第二个位置插入一个 元素:'量很大'。
# b,将此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表的 "全部收费,屌丝请绕过" 删除。
# c,将此["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]列表的 "verygood"全部变成大写。
# d,给 '大陆' 对应的字典添加一个键值对 '1048' :['一天就封了']
# e,"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"]
# f,给此["全部免费,真好,好人一生平安","服务器在国外,慢"]列表的第一个元素,加上一句话:'可以爬下来' '''
# av_catalog = {
# "欧美":{
# "www.太白.com": ["很多免费的,世界最大的","质量一般"],
# "www.alex.com": ["很多免费的,也很大","质量比yourporn高点"],
# "oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
# "hao222.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
# },
# "日韩":{
# "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
# },
# "大陆":{
# "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
# }
# }
# a
# av_catalog['欧美']["www.太白.com"].insert(2,'量很大')
# print(av_catalog)
#
# b
# av_catalog['欧美']['hao222.com'].pop()
# print(av_catalog)
# c
# av_catalog['日韩']['tokyo-hot'][1]=av_catalog['日韩']['tokyo-hot'][1].upper()
# print(av_catalog)
# print(l)
# #d
# av_catalog['大陆']['1048']='一天就封了'
# print(av_catalog)
# e
# f
# av_catalog['大陆']['1024'][1]+='可以趴下来'
# print(av_catalog)
'''
# 4.有字符串"k: 1|k1 :2|k2:3 |k3 :4" 处理成字典 {'k':1,'k1':2....} (升级题)
'''
# l1 ="k: 1|k1 :2|k2:3 |k3 :4"
# l2 =''
# for i in l1:
# if i !=' ':
# l2=l2+i
# a= []
# b =[]
# c ={}
# l4 =l2.split('|')
# for i in l4:
# a.append(i[-1])
# b.append(i[:-2:])
# print(dict(zip(b,a)))
########################## 重点
# l2 =''
# d ={}
# for i in l1:
# if i !=' ':
# l2=l2+i
# # print(l2)
# l3 =l2.split('|')
# print(l3) # for i in l3 :
# k,v =i.split(':')
# d[k]=v
# print(d)
# l1 ="k: 1|k1 :2|k2:3 |k3 :4"
# c ={}
# l6=l1.split('|')
# for i in l6:
# k,v=i.split(':')
# c[k.strip()]=v.strip()
# print(c)
'''
5.元素分类
# 有如下值li= [11,22,33,44,55,66,77,88,99,90],将所有大于 66
的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
# 即: {'k1': 大于66的所有值列表, 'k2': 小于66的所有值列表}
'''
# li= [11,22,33,44,55,66,77,88,99,90]
# dic1 ={}
# big =[]
# small =[]
# for i in li :
# if i >66:
# big.append(i)
# else:small.append(i)
# dic1['k1']=big
# dic1['k2']=small
# print(dic1)
'''
# 6.输出商品列表,用户输入序号,显示用户选中的商品
# 商品列表:
# goods = [{"name": "电脑", "price": 1999},
# {"name": "鼠标", "price": 10},
# {"name": "游艇", "price": 20},
# {"name": "美女", "price": 998}, ]
#
# 要求:
# 1:页面显示 序号 + 商品名称 + 商品价格,如:
# 1 电脑 1999
# 2 鼠标 10
# …
# 2:用户输入选择的商品序号,然后打印商品名称及商品价格
# 3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。
# 4:用户输入Q或者q,退出程序。 '''
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998}, ]
end_list=[]
shop_list = []
num = []
i=0
while True:
print('序号 商品名字 电脑价格')
for i, j in enumerate(goods):
print('%s %s %s' % (i + 1, j['name'], j['price']))
chiose = input('请输入序号, 输入q退出')
if chiose.isdigit():
chiose =int(chiose) # shop_list[chiose-1]['num']=0
if chiose-1 < len(goods):
shop_list = goods[chiose - 1].copy()
# print(' {} {}'.format(goods[chiose-1]['name'],goods[chiose-1]['price']))
print("%s %s"%(goods[chiose-1]['name'],goods[chiose-1]['price'])) if shop_list in end_list:
shop_list['num'] = i
i = i + 1
shop_list['price'] = goods[chiose - 1]['price'] * (i - 1)
end_list.pop()
end_list.append(shop_list)
else:
print('列表中不存在该物品,生成该物品')
shop_list['num'] = i
i = i + 1
shop_list['price'] = goods[chiose - 1]['price'] * (i - 1) end_list.append(shop_list) elif chiose-1>len(goods):
print('你输入的内容不再该序号里') elif chiose =='q':
l2 =[]
print('退出程序')
for i in end_list:
if i not in l2:
l2.append(i)
# print(l2)
print('你购买的物品是 %s %s %s '%('名字','金额','数量'))
sum =0
for i in l2:
print(' %s %s %s'%(i['name'], i['price'],i['num']))
sum =sum+i['price']
print('花费的总金额为%s'%(sum)) break else:
print('输入数字或者q,不要输入其他的')

day05 --class --home的更多相关文章

  1. My way to Python - Day05 - 面向对象-思维导图

    My way to Python - Day05 - 面向对象   思维导图

  2. day05 Servlet 开发和 ServletConfig 与 ServletContext 对象

    day05 Servlet 开发和 ServletConfig 与 ServletContext 对象 1. Servlet 开发入门 - hello world 2. Servlet 的调用过程和生 ...

  3. python day05笔记总结

    2019.4.2 S21 day05笔记总结 一.昨日内容回顾与补充 1.extend(列表独有功能) 循环添加到一个列表中 a.有列表users = ['张三',‘李四]   people = [' ...

  4. Python基础(协程函数、内置函数、递归、模块和包)-day05

    写在前面 上课第五天,打卡: 凭着爱,再回首: 一.协程函数(生成器:yield的表达式形式) 1.yield 的语句形式: yield 1 - 这种方式在 Python基础(函数部分)-day04  ...

  5. day05(Object,tostring(),equals(),System,Date,SimpleDateFormat,拆装箱,正则表达式)

    Object类, 是所应类的父类: 拥有自己的方法:常用的    红颜色标记的为常用的方法 toString() 用法:打印对象的地址值 getClass() 获取当前类的字节码文件getName() ...

  6. 超全面的JavaWeb笔记day05<xml&dtd&jaxp>

    0.表单提交方式(*****) button提交 超链接提交 事件 1.xml简介和应用(了解) 2.xml文档声明和乱码解决(*****) 文档声明 必须放在第一行第一列 设置xml编码和保存编码一 ...

  7. Day05 xml详解

    day05总结 今日内容 XML语法 XML约束之DTD XML解析器介绍 XML解析之JAXP( DOM.SAX ) DOM4J Schema   一.XML语法 XML概述   1 什么是XML ...

  8. python开发学习-day05(正则深入、冒泡排序算法、自定义模块、常用标准模块)

    s12-20160130-day05 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  9. 2017-2018-1 JAVA实验站 冲刺 day05

    2017-2018-1 JAVA实验站 冲刺 day05 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 进行工作总结 100% 齐力锋 找按钮音乐 100% 张浩林 写博客 100% ...

随机推荐

  1. Python any() 函数

    Python any() 函数  Python 内置函数 描述 any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 ...

  2. 4-在windon10上mysql安装与图形化管理

    安装及可能遇到的问题: 1.windows10上安装mysql(详细步骤  https://blog.csdn.net/zhouzezhou/article/details/52446608 2. 在 ...

  3. SqlMapConfig.xml配置文件中的mapper映射器标签

    Mapper配置的几种方式: 1. <mapper resource=" "/> 使用相对于类路径的资源 如:<mapper resource="com ...

  4. 20155334 2016-2017-2 《Java程序设计》第六周学习总结

    20155334 2016-2017-2 <Java程序设计>第六周学习总结 教材学习内容总结 第十章:输入/输出 InputStream与OutputStream java将输入/输出抽 ...

  5. Computer

    Computer 1. Ctrl+N .根据惯例,“Control”.“Shift” 以及 “Alternate” 按键将以 Ctrl.Shift 以及 Alt 来表示,需要特别指出的是,其中第一个按 ...

  6. struts2+websocket报错:failed: Error during WebSocket handshake: Unexpected response code:404

    最近把websocket集成进项目里面来,打开网页总是会遇到这样的错误. 网上说的原因有3种,但是都不适合我,但是也记录下. 1.struts2截拦掉了ws的请求.这种援用可以尝试把web.xml清空 ...

  7. 洛谷 P1967 货车运输(克鲁斯卡尔重构树)

    题目描述 AAA国有nn n座城市,编号从 11 1到n nn,城市之间有 mmm 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 qqq 辆货车在运输货物, 司机们想知道每辆车在不超过车 ...

  8. JAVA常见面试题及解答

    JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...

  9. [Elixir004]通过环境变量(Environment Variables)来管理config

    在elixir的config中我们有时会使用的到一些不想暴露出来的配置项,常用的作法是如Phoenix #config/prod.exs use Mix.Config ... # Finally im ...

  10. solr分词一:mmseg4j

    刚接触Lucene2.x和Solr2.x的时候,谈到中文分词,会让我立即想到用庖丁中文分词,庖丁中文分词因巨大的中文词库以及支持不限制个数的用户自定义词库,而且是纯文本格式,一行一词,使用后台线程检测 ...