day06 小数据池和编码
一. 上次课内容回顾
字典:
由{}括起来. 每个元素用逗号隔开, key:value的形式存储数据
key: 不可变的. 可哈希的.
增删改查:
1. 增加: 直接用新key来赋值. dict[key] = value setdefault()
2. 删除: pop(key), popitems(), clear(), del dict[key]
3. 修改: dict[key] = value, update()
4. 查询: get(key) dict[key] setdefault()
5. 常用操作:
1. keys() 拿到所有的key
2. values() 拿到所有的value
3. items() 拿到所有的键值对. (key, value)
6. 字典的遍历
for k,v in dict.items():
for k in dict:
dict[k]
二. 作业讲解
三. 今日主要内容
1. 小数据池.
目的:缓存我们字符串,整数,布尔值。在使用的时候不需要创建过多的对象
缓存:int, str, bool、
int: 缓存范围 -5~256
str:
1. 长度小于等于1,直接缓存
2. 长度大于1. 字符串中如果只有数字, 字母, 下划线。 就会缓存
3. 乘以1。 同上, 乘以大于1的数。仅包含数字,字母下划线。最终长度小于20会缓存
4. 使用sys模块中的intern()缓存字符串
代码块的关系:如果在同一个代码块中。默认的整数和字符串还有布尔值都会进行缓存. 如果涉及计算。尊崇上面的规则
如果跨代码块,按照上面的规则执行的
2. is和==的区别
is比较的是内存地址
==比较的是值
3. decode和encode
python3内存中使用的是unicode。
unicode => utf-8 encode("utf-8")
utf-8 => unicode decode("utf-8")
utf-8和gbk不能直接转换
bytes是字符串的另一种表示形式
预习:
list和dict相关操作
set集合(粗略的看一看)
深浅拷贝(难)
1,老男孩好声⾳选秀⼤赛评委在打分的时候呢, 可以进⾏输入. 假设, 老男孩有10个评委. 让10个评委进⾏打分, 要求, 分数必须⼤于5分, ⼩于10分.
score_list=[]
count=0
welcome='''*******Welcome*******
欢迎大家给老男孩好声选秀大赛评分!
'''
print(welcome)
sum=0
while count>=0 and count<10:
count += 1
score=input("请第%s位评委输入评分:" % (count))
if score.isdigit():
score=float(score)
if score>5 and score<=10:
score_list.append(score)
else:
print("输入的分数不妥,请重新输入")
count=count-1
continue
else:
print("输入不合法!")
count = count - 1
continue
score_list.sort()
min=score_list.pop(0)
max=score_list.pop()
for i in range(len(score_list)):
sum +=float(score_list[i])
print("""
*******分数*******
去掉一个最低分%s
去掉一个最高分%s
左后得分是>>>>%s
"""%(min,max,sum/len(score_list)))
2.
电影投票. 程序先给出个前正在上映的电影列表. 由用户给每个电影投票. 最终将该户投票信息公布出来 lst = ['⾦瓶梅', '解救吾先⽣', '美国往事', '西西里的美丽传说'] 结果: {'⾦瓶梅': 99, '解救吴先⽣': 80, '美国往事': 6, '西西里的美丽传说': 23}
lst = ['瓶梅', '解救吾先⽣', '美国往事', '西西里的美丽传说']
score_list={}
print("请客观公正的给一下电影进行评分!")
for i in range(len(lst)):
score=input("请给>>%s<<<输入你的评分"%(lst[i]))
score_list.setdefault(lst[i],score)
print(score_list)
3.念数字.给出一个字典. 在字典中标识出每个数字的发音. 包括相关符号. 然后由用户输入一个数字. 让程序读出相对应的发音(不需要语音输出. 单纯的打印即可)
dict={
"-":"fu",
"0":"ling",
"1":"yi",
"2":"er",
"3":"san",
"4":"si",
"5":"wu",
"6":"6",
"7":"qi",
"8":"ba",
"9":"jiu",
".":"dian",
}
num=input("请输入一个整数")
if num.isdigit() or num.startswith("-"):
for numi in num:
for k ,v in dict.items():
if numi ==k:
print(v,end=" ")
else:
print("你咋不听话捏?重新运行输入数字")
4.车牌区域划分, 现给出以下车牌. 根据车牌的信息, 分析出各省的车牌持有量.
cars=["鲁A32444","鲁B12333","京B8989M","黑C46555","沪B25041","沪B25041","湘B25041","贵A2345","贵A2345","贵A2345"]
locals={"沪":"上海","黑":"黑龙江","鲁":"山东","鄂":"湖北","湘":"湖南","京":"北京","贵":"贵州"}
list=[]
str="_"
count_car={}
count_car1={}
for first in cars:
list.append(first[0])
str=str.join(list)
for key,value in locals.items():
count_car.setdefault(value,str.count(key))
for key2, value2 in count_car.items():
if value2!=0:
count_car1.setdefault(key2,value2)
print(count_car1)
cars=["鲁A32444","鲁B12333","京B8989M","黑C46555","沪B25041","沪B25041","湘B25041"]
locals={"沪":"上海","黑":"黑龙江","鲁":"山东","鄂":"湖北","湘":"湖南","京":"北京","贵":"贵州"}
list=[]
str="_"
count_car={}
for first in cars:
list.append(first[0])
str=str.join(list)
for key,value in locals.items():
count_car.setdefault(value,str.count(key))
print(count_car)
5干掉主播. 现有如下主播收益信息, 按照要求, 完成相应操作:

zhubo={"卢本伟":12200,"冯提莫":189999,"金老板":99999,"吴老板":25000000,"alex":126,}
sum=0
for k,v in zhubo.items():
sum+=v
print("主播的平均工资:%s"%(sum/len(zhubo)))
dict1={}zhubo={"卢本伟":12200,"冯提莫":189999,"金老板":99999,"吴老板":25000000,"alex":126,}sum=0for k,v in zhubo.items(): sum += v avr=sum/len(zhubo)print(avr)for k,v in zhubo.items(): if v>avr: dict1.setdefault(k,v)print(dict1)
zhubo={"卢本伟":12200,"冯提莫":189999,"金老板":99999,"吴老板":25000000,"alex":126,}
zhubo.pop("卢本伟")
print(zhubo)
day06 小数据池和编码的更多相关文章
- python学习笔记:第6天 小数据池和编码转换
目录 1. id 和 == 2. 小数据池 3. 编码和解码 1. id 和 == id:id是一个内置的函数,可以查看变量存放的内存地址(实际上不是真正的物理地址,这里暂时这样理解),用于判断是变量 ...
- day06——小数据池、深浅拷贝、集合
day06 小数据池 小数据池--缓存机制(驻留机制),只是一种规格,不会实际的开辟一个空间 == 判断两边内容是否相等 ***** # a = 10 # b = 10 # print(a == b) ...
- day06 小数据池,再谈编码
今日所学 一. 小数据池 二. is 和==的区别 三. 编码的问题 一.小数据池的作用 用来缓存数据 可以作用的数据类型: 整数(int), 字符串(str), 布尔值(bool). 什么是块 ...
- python 浅谈小数据池和编码
⼀. ⼩数据池 在说⼩数据池之前. 我们先看⼀个概念. 什么是代码块: 根据提示我们从官⽅⽂档找到了这样的说法: A Python program is constructed from code b ...
- python:id与小数据池与编码
一.id与小数据池 id:查的是内存地址 a = 100 b = 100 print(a == b)#比较的数值 print(a is b)#比较的是id print(id(a),id(b))#id相 ...
- 06_python_小数据池/ is == /编码
一.小数据池 1.代码块 python程序是由代码块构成的.一个代码块的文本作为python程序执行的单元.代码块: 一个模块, 一个函数, 一个类, 甚至每一个command命令都是一个代码块. 一 ...
- 《Python》 代码块、小数据池和编码转换
一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 什么是代码块:一个py文件,一个函数,一个文件,一个类都是一个代码块. 作为交互方式输入的每一行 ...
- python基础4(小数据池,编码,深浅拷贝)
1.==与is == 比较值是否相等 is比较内存地址是否相同 2.小数据池 为了节省内存,当数据在一个范围里的时候,两个值相同的变量指向的是小数据池里的同一个地址 数字范围:-5 ~ 256 num ...
- 6,id 小数据池,编码and解码。
asscii :8位(数字,英文,特殊字符)表示一个字符. A:0000 0001 unicode :(万国码)初期:16位,两个字节,表示两个字符. A:0000 0001 0000 0001 中: ...
随机推荐
- [BZOJ1857][SCOI2010]传送带-[三分]
Description 传送门 Solution 三分套三分.代码简单但是证明苦兮兮.. 假如我们在AB上选了一个点G,求到该点到D的最小时间. 图中b与CD垂直.设目前从G到D所耗时间最短的路径为G ...
- day1 函数 (独立功能代码块)
1.引入函数 2.函数执行过程 4.带参数的函数 5.带返回值的函数 6. 多个返回值 (return a,b,c)元组 7.4种函数 1.引入函数 独立功能代码块 ---> 封装 ----&g ...
- 运行ntpdate报错:Temporary failure in name resolution
一.问题报错: 忽然发现某台机器时间慢了些几分钟,之前没有搭建ntpd服务,目前都是使用的ntpdate加定时任务进行时间同步.直接执行ntpdate报错如下: # ntpdate cn.pool.n ...
- 十、Django之Admin
一.Django Admin 管理工具 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中 ...
- docker error:/root/.docker/config.json: is a directory
问题: 本地没有taskworker镜像,docker从远端拉取,但是拉取时需要读取config.json配置,解析配置时,发现config.json是个目录,错误信息如下: taskworker_1 ...
- WPF DataGridTable
由于项目要显示表头合并,而数据源列随时变更,又不想重复的画表格,就实现动态数据(dynamic)绑定和配置数据列模板的方式 编辑DataGridColumnHeader样式实现表头合并:效果如下 实现 ...
- SQL Server 2008 R2 链接 Oracle 10g
首先sqlserver 链接oracle可以通过两个访问接口: “MSDAORA” 和“OraOLEDB.Oracle” 1.“MSDAORA”访问接口是由Microsoft OLE DB Provi ...
- 车架号识别,VIN码识别 助力汽车后市场
又有一家汽配圈新贵引入了小译家的 车架号识别(VIN码识别)技术 那就是明觉科技 是一个服务于汽车后市场 集数据服务.行业数据挖掘 及“互联网+”为一体的汽配信息协作平台 旗下拥有一款全车零配件信息智 ...
- Swoole实现h5版聊天室笔记
声明:该聊天室目前只有一对多,一对一的聊天功能,另外,因为没有使用到mysql,所以还存在比较多的缺陷地方,但知道原理就差不多了,这里主要分享下swoole简易的聊天室制作思路. 开发环境:cento ...
- centos 7 安装和基本配置
U盘安装centos 7 还是官方文档最准确. 下载centos https://docs.centos.org/en-US/centos/install-guide/downloading/ 制作安 ...