小数据池/is和==/再谈编码作业
# 1,老男孩好声选秀大赛评委在打分的时候呢, 可以输入分数. 假设, 老男孩有10个评委. 让10个评委进行打分, 要求, 分数必须高于5分, 低于10分.将每个评委的打分情况保存在列表中. pingwei = ['alex', 'wusir', '麻花藤', '东风扇', '西风扇', '宝宝', '太白', '日天', '女神', '老弟'] #方法一:将分数添加到一个新列表中 score = [] for el in pingwei:while 1:uscore = input(f'{el}请打分(5~10):').strip()if uscore.isdigit():uscore = int(uscore)if 5 < uscore < 10:score.append(uscore)break # 跳出 while 循环else:print('分数必须高于5分, 低于10分,请重新输入')continue # 继续让当前的评委打分else:print('输入不合法,请重新输入')print(score) #方法二:将分数直接拼接到评委的名字后面 for i in range(len(pingwei)):while 1:uscore = input(f'{pingwei[i]}请打分(5~10):').strip()if uscore.isdigit():uscore = int(uscore)if 5 < uscore < 10:pingwei[i] += f'-{str(uscore)}分' # ['alex-6分','wusir-7分', '麻花藤-8分', '东风扇', ...]break # 跳出 while 循环else:print('分数必须高于5分, 低于10分,请重新输入')continue # 继续让当前的评委打分else:print('输入不合法,请重新输入')print(pingwei)# 2.念数字. 给出一个字典. 在字典中标识出每个数字的发音. 包括相关符号. 然后由用户输入一个数字. 让程序读出相对应的发音(不需要语音输出. 单纯的打印即可) dic = {'-':'fu','0':'ling','1':'yi','2':'er','3':'san','4':'si','5':'wu','6':'liu','7':'qi','8':'ba','9':'jiu','.':'dian'} num = input('请输入一个数:') for k in num:print(dic[k], end=' ')# 3.车牌区域划分, 现给出以下车牌. 根据车牌的信息, 分析出各省的车牌持有量. #题意:判断 cars 列表中不同省份(简称)的车牌数量分别是多少,并以 省份名:车牌数量 的形式添加到字典中,并输出. #方法一:使用get(也是老师讲解的方法,推荐使用的) cars = ["鲁A32444", "鲁B12333", "京B8989M", "黑C49678", "黑C46555", "沪B25041"] locals = {'沪': "上海", "黑": "黑龙江", "鲁": "山东", "鄂": "湖北", "湘": "湖南", "京": "北京"} dic = {} # {"山东":2,"北京":1,...} for el in cars:city = locals[el[0]]if dic.get(city): # "鲁"-->"山东" 城市已经存在,数量加1dic[city] += 1else:dic[city] = 1 print(dic)# 方法二:使用setdefault (有坑,慎用!-->自己写的) cars = ["鲁A32444", "鲁B12333", "京B8989M", "黑C49678", "黑C46555", "沪B25041"] locals = {'沪': "上海", "黑": "黑龙江", "鲁": "山东", "鄂": "湖北", "湘": "湖南", "京": "北京"} dic = {} # {"山东":2,"北京":1,...} for el in cars:city = locals[el[0]]dic[city] = dic.setdefault(city, 0) + 1 #使用setdefault省略了判断key是否存在的过程,因为这个方法本身会先判断key是否存在而进行一系列的操作 print(dic)''' 分析:刚开始上面的 dic[city] = dic.setdefault(city, 0) + 1 我使用的是 dic.setdefault(city, 0) += 1 ,会报错(压根就不能写上,直接红线)为什么会报错?dic.setdefault(city, 0) += 1 等价于dic.setdefault(city, 0) = dic.setdefault(city, 0) + 1 #左右两端都是确定的数值,不能进行赋值操作赋值操作的左边一定要是个变量,只有对变量才能赋值,而这里dic.setdefault(city, 0)得到的是个确定的数值,就相当于2=2+1这是不允许的.而使用 dic[city] 也是拿到了city的对应的值,还是个变量,比较好'''# 4.干掉主播. 现有如下主播收益信息, 按照要求, 完成相应操作: zhubo = {'卢本伟': 122000, '冯提莫': 18999, '金老板': 99999, '吴老板': 25000000, 'alex': 126} # 1.计算平均值 sum = 0 for v in zhubo.values():sum += v average = sum/len(zhubo) print(average)# 2.干掉收益小于平均值的主播 #注意:字典不能在自己循环遍历的时候新增或者删除自己的元素,但是可以在别人遍历的时候删除 sum = 0 dic_del_list = [] # 暂时保存要删除的元素的key for k, v in zhubo.items():sum += v #总分if v < sum/len(zhubo): #平均分dic_del_list.append(k) #将小于平均分的 key 加入要删除的列表for el in dic_del_list:del zhubo[el]# zhubo.pop(el) # 这俩都能删除 print(zhubo)#干掉卢本伟 del zhubo['卢本伟'] # zhubo.pop('卢本伟') # 这俩都能删除 print(zhubo)""" # 今日默写: # 1, == 和is的区别is 比较的是内存地址== 比较的是内容当两个变量指向同一个对象的时候. is是True, ==也是True# 2, gbk,utf-8的转化。 s = "我今天非常的困" # 编码 bs = s.encode('utf-8') # utf-8 的bytes # 解码 s = bs.decode('utf-8') # print(s) # # 编码 bss = s.encode("gbk") # gbk 的bytes # print(bss) """
![](/assets/blank.gif)
![](/assets/blank.gif)
# 1,老男孩好声选秀大赛评委在打分的时候呢, 可以输入分数. 假设, 老男孩有10个评委. # 让10个评委进行打分, 要求, 分数必须高于5分, 低于10分. # 将每个评委的打分情况保存在列表中. pingwei = ['alex', 'wusir', '麻花藤', '东风扇','西风扇','宝宝','太白','日天','女神','老弟']lst = []index = 0 while index < len(pingwei):content = input("请%s评委打分" % pingwei[index])if content.isdigit():fen = int(content)if fen >= 5 and fen <= 10: # 正确的分数 lst.append(fen)index += 1 # 向后走一个人else: # 分数是错误的. 重新打分print("对不起, 您的分数有问题. 请重新打分.")else:print("输入的有问题. 请重新打分") print(lst)# 2.念数字. 给出一个字典. 在字典中标识出每个数字的发音. # 包括相关符号. 然后由用户输入一个数字. # 让程序读出相对应的发音(不需要语音输出. 单纯的打印即可) dic = {'-':'fu','0':'ling','1':'yi','2':'er','3':'san','4':'si','5':'wu','6':'liu','7':'qi','8':'ba','9':'jiu','.':'dian' }content = input("请输入数字:") # 123 # 获取到字符串中的每一个字符 for c in content:print(dic[c], end=" ")# 3. 车牌区域划分, 现给出以下车牌. 根据车牌的信息, 分析出各省的车牌持有量. cars = ['鲁A32444','鲁B12333','京B8989M','黑C49678','黑C46555','沪B25041', "吉H12345"] locals = {'沪': '上海', '京': "北京", '黑': '黑龙江', '鲁': '山东', '鄂': '湖北', '湘': '湖南', "吉":"吉林"}result = {}# 1. 获取导每一个车牌子 for car in cars: # '鲁A32444 鲁B12333'# 车牌 简称jian = car[0] # '鲁'# 省份prov = locals[jian] # '山东'if result.get(prov): # 已经出现过该车牌result[prov] += 1 # result[prov] = result[prov] + 1else: # 当前车牌还没出现过result[prov] = 1print(result)# 4.干掉主播. 现有如下主播收益信息, 按照要求, 完成相应操作: zhubo = {'卢本伟':122000, '冯提莫':189999, '金老板': 99999, '吴老板': 25000000, 'alex': 126} print(list(zhubo)) # 平均收益 sum = 0 for v in zhubo.values():sum += vavg = sum / len(zhubo) # 平均收益 500W # print(avg)# 2. 干掉收益小于平均值的主播. # 错的 # for k, v in zhubo.items(): # if v < avg: # zhubo.pop(k) # dictionary changed size during iteration# 解决. 把要删除的主播找到. 放在一个列表中 lst = ['卢本伟', "冯提莫", '金老板', 'alex'] # 准备要删除的主播 for k, v in zhubo.items(): # '卢本伟':122000if v < avg: # 收益小于平均值的主播 lst.append(k)# 循环这个列表. 删除主播 for el in lst: # el就是你刚才保存的key zhubo.pop(el)print(zhubo)# 3. 干掉卢本伟 zhubo.pop("卢本伟") print(zhubo)
View Code
转载于:https://www.cnblogs.com/liangxiaoji/p/11150135.html
小数据池/is和==/再谈编码作业相关推荐
- 06 小数据池 is 和 = = 再谈编码
今日主要内容 1. 小数据池, id() 小数据池针对的是: int, str, bool 在py文件中几乎所有的字符串都会缓存. id() 查看变量的内存地址 2. is和==的区别 is 比较的是 ...
- 小数据池 is和== 再谈编码
昨日回顾 上节课内容回顾1. 字典{key:value, key:value.....}成对的保存数据字典没有索引. 不能切片, 字典的key必须是可哈希的.不可变的1. 增加:dic[新key] = ...
- python之路--小数据池,再谈编码,is和 == 的区别
一 . 小数据池 # 小数据池针对的是: int, str, bool 在py文件中几乎所有的字符串都会缓存.# id() 查看变量的内存地址 s = 'attila' print(id(s)) 二 ...
- python 小数据池 is和 == 编码解码
########################总结######################### 今日主要内容 1. 小数据池, id() 小数据池针对的是: int, str, bool 在p ...
- python编码和小数据池
python_day_6 一. 回顾上周所有内容 一. python基础 Python是一门解释型. 弱类型语言 print("内容", "内容", end=& ...
- python is 和 == 的区别、解码和编码 小数据池
一 . is 和 == (1) is 是比较两边的内存地址 a=1 print(id(a))b=1 print(id(b))print(a is b) # Truestr='alex' print ...
- dya6小数据池、集合、编码、深浅copy
一.小知识点: 1.id:测试内容的内存地址 s = 'abc' print(id(s) >>> 2174306953568 2.is:判断内存地址是否相等 s = 'abc' s1 ...
- Python小程序练习及认识小数据池和编码
1. 三次登录验证 完成⽤户登录验证 要求: 1. 系统⾃动⽣成4位随机数. 作为登录验证码. 2. ⽤户输入⽤用户名和密码还有验证码. 3. 用户可以 ...
- python我想对你说_python学习第4天----is和==区别、小数据池、编码解码
1.is和==的区别 1)==比较的是左右两边的值,无论是字符串.数字.列表,元组.若两边的值相等,则返回True a = "zdz"b= "zdz" prin ...
最新文章
- 【转】C# windows服务的创建与调试
- 树莓派c语言运行_树莓派完成简单的编程(四)
- Linux使用yum install 安装程序时,提示“另外一个程序锁定了 yum;等待它退出……”
- linux 下的文件属性,Linux 下文件属性介绍(示例代码)
- python旋转排序数组_33.leetcode题目讲解(Python):搜索旋转排序数组
- 微课|中学生可以这样学Python(例6.4):因数分解
- Java入门系列-15-封装
- 2019中国五大新兴制造业迁徙路径及产业发展趋势全景
- 计算机辅助园林设计ps,《CAD PS辅助园林设计》课程教学大纲.doc
- 基于PID控制的车辆LKA算法
- 国外15种手机游戏引擎和开发工具介绍
- CSDN版主考核方案
- 释放租赁红利,中国长租公寓行业创新模式探讨和分析
- python3绘制皮卡丘
- 通俗易懂,unity和c#是什么关系
- document.write
- 简单几步,教你在服务器上实现量化交易(程序化交易)
- 以太网通信,UDP通信
- 罗克韦尔自动化开放工业标准和互连性用于提高控制系统信息整合
- 推荐一个基于 Vue 的前端界面可视化设计器项目