垃圾回收机制
- 在python中他自己会自动申请和释放内存空间
- 引用计数就是当一个数据值在被引用的次数不为0次的时候则表示这个数据值还有用 不会被当成垃圾删除 如果这个数据值被引用的次数为0则要被当成垃圾进行回收
- 标记清楚专门用来解决循环引用的问题上 将内存中的所有数据值都检查一遍是否存在循环然后进行标识 最后进行删除
- 分段时间进行检查所有数据的使用率 因资源消耗过大为了减轻垃圾回收机制的资源消耗 越往后检测频率越低
字符编码简介和发展史
简介
- 在文本文件中才有的字符编码
- 在计算机内部存储数据的本质是二进制
- 转换关系不能随便更改是有一个标准的
发展史
- 从一开始计算机是由美国人发明 使用的是英文字符
- ASCII码:内部记录了英文字符和数字的对应的关系
A-Z 69-90
a-z 97-122
使用1bytes来存储字符
在这个阶段计算机只能识别英文 无法识别其他文字
- EBK码:由于需要让计算机识别中文 就开发了一套中文字符 内部记录了中文字符 英文字符与数字的对应的关系
2bytes起步存储中文
1bytes存储英文
- unicode:是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码 以满足跨语言、跨平台进行文本转换、处理的要求。
- utf:针对unicode进行的优化 utf8 英文采用1bytes 其他的都是统一采用3bytes
内存使用Unicode 硬盘使用utf8
字符编码的实际应用
- 在使用编码解码只用字符串可以 其他的需要进行转换才可以使用编码解码
- 开始使用什么编码保存的就用什么编码打开
- 编码就是将信息转换成计算机能够读懂的代码 encode
- 解码就是将计算机的代码转换成我们能读懂的信息decode
在解释器里面python2默认的编码是ASCII码 在python3中默认的编码是utf8
如果需要写文件进行编码的话需要加上coding:utf8 在所有的字符串前面加上小字母u
文件操作的简介
- 使用写代码进行自动操作的文件读写
- 代码操作文件使用open(文件路径,读写模式,字符编码) 方式1:使用一个变量=open()打开这个文件 再加上f.close()进行关闭
方式2:使用with open() as 变量名: 在这里就是子代码运行结束以后自动使用close()进行关闭
- 针对文件路径在使用的时候可能存在特殊含义 在字符串前面加上r就可取消特殊含义了 1.统计列表中每个数据值出现的次数并组织成字典战士 eg: l1 = ['jason','jason','kevin','oscar'] 结果:{'jason':2,'kevin':1,'oscar':1} 真实数据 l1 = ['jason','jason','kevin','oscar','kevin','tony','kevin']
l1 = ['jason', 'jason', 'kevin', 'oscar', 'kevin', 'tony', 'kevin']
dict = {}
for key in l1:
dict[key] = dict.get(key, 0) + 1
print(dict)
2.编写员工管理系统
1.添加员工信息
2.修改员工薪资
3.查看指定员工
4.查看所有员工
5.删除员工数据
提示:用户数据有编号、姓名、年龄、岗位、薪资
数据格式采用字典:思考如何精准定位具体数据>>>:用户编号的作用