day05 --class --home
# -*- 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的更多相关文章
- My way to Python - Day05 - 面向对象-思维导图
My way to Python - Day05 - 面向对象 思维导图
- day05 Servlet 开发和 ServletConfig 与 ServletContext 对象
day05 Servlet 开发和 ServletConfig 与 ServletContext 对象 1. Servlet 开发入门 - hello world 2. Servlet 的调用过程和生 ...
- python day05笔记总结
2019.4.2 S21 day05笔记总结 一.昨日内容回顾与补充 1.extend(列表独有功能) 循环添加到一个列表中 a.有列表users = ['张三',‘李四] people = [' ...
- Python基础(协程函数、内置函数、递归、模块和包)-day05
写在前面 上课第五天,打卡: 凭着爱,再回首: 一.协程函数(生成器:yield的表达式形式) 1.yield 的语句形式: yield 1 - 这种方式在 Python基础(函数部分)-day04 ...
- day05(Object,tostring(),equals(),System,Date,SimpleDateFormat,拆装箱,正则表达式)
Object类, 是所应类的父类: 拥有自己的方法:常用的 红颜色标记的为常用的方法 toString() 用法:打印对象的地址值 getClass() 获取当前类的字节码文件getName() ...
- 超全面的JavaWeb笔记day05<xml&dtd&jaxp>
0.表单提交方式(*****) button提交 超链接提交 事件 1.xml简介和应用(了解) 2.xml文档声明和乱码解决(*****) 文档声明 必须放在第一行第一列 设置xml编码和保存编码一 ...
- Day05 xml详解
day05总结 今日内容 XML语法 XML约束之DTD XML解析器介绍 XML解析之JAXP( DOM.SAX ) DOM4J Schema 一.XML语法 XML概述 1 什么是XML ...
- python开发学习-day05(正则深入、冒泡排序算法、自定义模块、常用标准模块)
s12-20160130-day05 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
- 2017-2018-1 JAVA实验站 冲刺 day05
2017-2018-1 JAVA实验站 冲刺 day05 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 进行工作总结 100% 齐力锋 找按钮音乐 100% 张浩林 写博客 100% ...
随机推荐
- Android使用ListView使用方法
Android使用ListView应该注意的地方 在ListView中设置Selector为null会报空指针? mListView.setSelector(null);//空指针 试试下面这种: ...
- cpuinfo
在Linux系统中,如何详细了解CPU的信息呢? 当然是通过cat /proc/cpuinfo来检查了,但是比如几个物理CPU/几核/几线程,这些问题怎么确定呢? 经过查看,我的开发机器是1个物理CP ...
- Linux守护进程编写方法及原理
什么守护进程? 守护进程是运行在后台的一种用来提供服务的进程,他脱离控制台独立运行,守护进程是一种很有用的进 程. Linux的大多数服务器就是用守护进程实现的.比如,Internet服务器inetd ...
- 20155316 2016-2017-2 《Java程序设计》第6周学习总结
教材学习内容总结 IO操作的目标 从数据源当中读取数据,以及将数据写入到数据目的地当中: I/O的来源地与目的地多种多样 I/O的流向:输入流.输出流.参照物 IO的分类方法 输入流\输出流: 字节流 ...
- Java反射API研究(1)——注解Annotation
注解在表面上的意思,只是标记一下这一部分,最好的注解就是代码自身.而在java上,由于注解的特殊性,可以通过反射API获取,这种特性使得注解被广泛应用于各大框架,用于配置内容,代替xml文件配置. 要 ...
- ERROR Function not available to this responsibility.Change responsibilities or contact your System Administrator.
APPLIES TO: Navigation: Help > Diagnostics > Custom Code > Personalize or Help > Diag ...
- Android-Activity启动模式-应用场景
在上一篇博客中,Android-Activity启动模式(launchMode),就介绍了Activity四种启动模式的特点与使用等,但是到底什么样子的场景,去使用什么样子的启动模式呢 Activit ...
- nancy中的身份验证
在nancy中,身份验证分为basic ,form ,token,stateless几种,basic和form这里不说了,其中如果是使用cookie来保存身份的, 需要注意的是:cookie有大小的限 ...
- [转载]WCF系列_分布式事务(下)
浏览到chnking的WCF的分布式事务处理不错,转载过来分享一下. 1. WCF分布式事务例子这里也用转账的例子说事.用户在系统A和系统B都有账户,账户间的资金可以互转,系统A的资金减少多少,系统B ...
- Hibernate 零配置之Annotation注解
JPA规范推荐使用Annotation来管理实体类与数据表之间的映射关系,从而避免同时维护两份文件(Java 实体类 和 XML 映射文件),将映射信息(写在Annotation中)与实体类集中在一起 ...