上节课回顾
1.
python里的(int,str)存在一个小数据池主要是为了节约内存.
int: -5~256 str:
is和 == 的区别:is比较的是内存地址,==比较的两边的值.
id(地址).
2.编码
1.ASCII, 英文, 数字, 一些特殊符号 8bit 1byte
2. GBK, 国标码, 汉字. 16bit 2byte 必须兼容ASCII
3. UNICODE, 万国码, 32bit 4byte , 兼容ASCII
4. UTF-8 可变长度的万国码
英文: 8bit 1byte
欧洲: 16bit 2byte
汉字: 24bit 3byte
在网络传输和数据存储的时候. 换gbk, utf-8(90%)
编码用(encode) unicode变成你需要的解码
编码之后的内容是字节(bytes类型)
解码用(decode): 把目标bytes转换成字符串
最后用什么编码,就要用什么解码.
新课:
1.对之前的知识点进行补充
1. str中的join方法 (将列表转换成字符串)
2.列表和字典在循环的时候不能直接删除.
需要把要删除的内容记录在新列表中
然后循环新列表.删除字典或列表.
3. fromkeys()
返回新字典. 对原字典没有影响
后面的value.是多个key共享一个value
字符串转换成列表:split()
把列表换成字符串:join()
join(可迭代对象)
(列表和字典都不能呢在for循环的时候进行删除,字典再循环的时候不允许改变大小)
for循环的时候,发现,剩余了
操作:添加一个新列表
新列表append添加内容
这样才能删除你要的结果
Foley 跟空沾边的都是Foley
2.set集合
特点
集合中的元素必须是可哈西的,不重复.
set续重 把重复的去掉
只保存key.set
(集合本身是可变的数据类型,不可哈西,有增删改查操作)
查询可以迭代对象for操作
&交集,|并集,^反交集
frozenset()冻结的集合. 不可变的. 可哈希的
3.深浅拷贝
1.浅拷贝
lst1 = ["何炅", "杜海涛","周渝民", ["麻花藤", "马芸", "周笔畅"]]
lst2 = lst1.copy() #复制
lst1[3].append("无敌多寂寞")
print(1)结果一样
print(2)结果一样
浅拷贝.只会拷贝第一层,第二层的内容不会拷贝.所以称为浅拷贝.
拷贝第一层内容. [:]或copy()
2.深拷贝
拷贝所有内容. 包括内部的所有.
lst2 = copy.deepcopy"(lst1)
3总结
赋值.赋值操作没有创建新对象.公用同一个对象
相关文章
- Python Set集合方法详解
- Redis 集合(Set)方法使用详解
- 深浅拷贝,原生和JQuery方法实现
- day06深浅拷贝,元组,字典,集合
- python学习Day6 元组、字典、集合set三类数据用法、深浅拷贝
- 嵌入式学习37-TCP并发模型-有限 2.IO模型: 1.阻塞IO: 没有数据到来时,可以让任务挂起 节省CPU资源开销,提高系统效率 2.非阻塞IO: 程序未接收到数据时一直执行 效率很低 3.异步IO 只能绑定一个文件描述符用来 读取数据 4.多路复用IO select 1.select监听的集合中的文件描述符有 上限限制 2.select有 内核层 向 用户层数据空间 拷贝 的过程,占用系统资源开销 3.select必须 轮询检测 产生 事件 的文件描述符 4.select 只能工作 在 水平触发 模式(低速模式) 无法工作 在 边沿触发 模式(高速模式) poll (监听的集合中的文件描述符有 没有上限限制) 1.poll有 内核层 向 用户层 数据空间 拷贝 的过程,占用系统资源开销 2.poll必须 轮询检测 产生 事件 的文件描述符 3.poll 只能工作在水平触发模式(低速模式) 与select相同 无法工作在边沿触发(高速模式) 3.函数接口: 1.select int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); 功能: select 监听 文件描述符集合 中 是否 有文件描述编程 ready状态 select 监听 文件描述符集合 中 ,若有状态 , 将没有ready状态的T除 若无状态,将阻塞继续等待 参数: nfds: 最大文件描述符的值 +1 readfds: 读 文件描述符集合 writefds: 写 文件描述符集合 exceptfds: 其余 文件描述符集合 timeout: 等待的时长 NULL 一直等待(超时处理) 返回值: 成功 返回 文件描述符集合中 的 文件描述符个数 失败 返回 -1 void FD_CLR (int fd, fd_set *set); 功能: 将文件描述符 fd 从集合中清除
- day_6深浅拷贝,元组字典集合类型定义和各种操作方法
- 总结day6 ---- set集合,基本类型的相互转化,编码,数据类型总结,循环时候不要动列表或者字典,深浅copy
- Python学习基础(二)——集合 深浅拷贝 函数
- 引用、浅拷贝及深拷贝 到 Map、Set(含对象assign、freeze方法、WeakMap、WeakSet及数组map、reduce等等方法)