字符串

join()

格式:   "拼接的东西".join(可迭代对象)

可以加列表转换成字符串

 lis = ['a','b','c','d']
s = "//".join(lis)
print(s) #结果
a//b//c//d

相反

split()   可以加字符串转换成列表       切割

列表和字典在循环的时候不能直接被删除
需要把要删除的内容记录在新的列表中

然后循环新列表,删除字典或列表

例如

lis = ['a','b','c','d','e']
for i in lis:
lis.remove(i)
print(lis) # 删除不完
lis1 = []
for i in lis:
lis1.append(i) #创建新列表
for a in lis1:
lis.remove(a) #删除旧列表
print(lis)

字典也同上

总结  :       字典和列表都不能在循环的时候进行删除,      字典在循环的时候不允许改变大小

集合

特点  :   无序的  不重复     元素必须可哈希(不可变)

作用 :    去重复

 s = [1,2,3,1,3,4,5,3,5,6,1,77,78,1,8,3,5,6,9,9,99]
a = set(s)
print(a) #{1, 2, 3, 4, 5, 6, 99, 8, 9, 77, 78} 去重复
s = list(a)

本身是可变的数据类型,  有增删改查的操作
增  删

s = {'我','lx','你',}
a = s.pop() #随机删除
a = s.add("他") #添加
s.remove('他') #删除
s.update("ndsad") #迭代添加
print(s)

frozensent()  冻结的集合

set  集合本身是可以改变的  是不可哈希的  我们可以使用frozenset来保存数据,

frozensent是不可改变的也就是一个可哈希的类型

深浅拷贝

重点

1  赋值   没有创建对象,  公用一个对象
 2  浅拷贝,拷贝第一层内容,[:]或copy()

3 深拷贝,  拷贝所有内容包括内部所有   引入copy模块,deepcopy()

4  引用    import

 import copy  # 引用copy 模块
lst = ["赵云",'马可波罗','猴子','孙尚香','公孙离',["吕布",'干将','貂蝉']]
lst1 = lst[:] #浅拷贝
lst2 = lst.copy() #浅拷贝
lst3 = copy.deepcopy(lst) #深拷贝

重点

一个面试题

循环引用      官方文档有写

a = [1,2]
a[1] = a
print(a[1])

Python中的 set 与 深浅拷贝的更多相关文章

  1. python中的“赋值与深浅拷贝”

    Python中,赋值与拷贝(深/浅拷贝)之间是有差异的,这主要源于数据在内存中的存放问题,本文将对此加以探讨. 1 赋值(添加名字) 赋值不会改变内存中数据存放状态,比如在内存中存在一个名为data的 ...

  2. python中的赋值和深浅拷贝

    python中,A object  = B object  是一种赋值操作,赋的值不是一个对象在内存中的空间,而只是这个对象在内存中的位置 . 此时当B对象里面的内容发生更改的时候,A对象也自然而然的 ...

  3. python中的赋值与深浅拷贝的区别

    import copy lt = [1, 2, [3, 4]] # 赋值会增加一个引用,访问的都是同一数据 # lt2 = lt # 浅拷贝:只拷贝对象本身,里面的元素只会增加一个引用 lt2 = l ...

  4. python中set(集合),深浅拷贝以及一些补充知识点

    1.set集合 特点:无序,不重复,元素必须可哈希(不可变) 作用:去重复 本身是可变的数据类型.有增删改查操作.{集合的增删改查操作应用较少,这里不做详细介绍了(这里的增有一个方法update注意这 ...

  5. python中的赋值与深浅拷贝

    Python当中对于拷贝,分为两种类型.一种是数字和字符串,另一种就是列表.元组.字典等其他类型了. 一.数字和字符串的拷贝 1.赋值 举个栗子: a1 = 123123 a2 = 123123 # ...

  6. python 学习笔记5(深浅拷贝与集合)

    拷贝 我们已经详细了解了变量赋值的过程.对于复杂的数据结构来说,赋值就等于完全共享了资源,一个值的改变会完全被另一个值共享. 然而有的时候,我们偏偏需要将一份数据的原始内容保留一份,再去处理数据,这个 ...

  7. python基础(三元运算+深浅拷贝+函数参数)

    三元运算 三元运算,又称三目运算,主要作用是减少代码量,是对简单的条件语句的缩写. 书写格式: result = 值1 if 条件 else 值2 即如果条件成立,则将值1赋给result变量,如果不 ...

  8. [Python笔记]第三篇:深浅拷贝、函数

    本篇主要内容:深浅拷贝,自定义函数,三目运算,lambda表达式, 深浅拷贝 一.数字和字符串 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import ...

  9. python yield,yield from,深浅拷贝

    (一)yield和yield from 转自:理解yield   yield from (1)yield 1.通常的for…in…循环中,in后面是一个数组,这个数组就是一个可迭代对象,类似的还有链表 ...

随机推荐

  1. react 总结

    1.React 里直接修改 this.state 和调用 setState() 修改 state 的值有什么区别? 使用对this.state赋值并没有什么作用,官方提醒,应该把this.state当 ...

  2. Python正则表达式------进阶

    Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re ...

  3. 文字始终均匀分布整个div

    html部分 <div id="div"> <span>这是一段话,这是又一段话!</span> </div> js部分 getFu ...

  4. scrapy 碎片

    1.启动命令 2.目录结构 3.文件说明 4.架构图示 5.代码流程 参考资料: http://www.cnblogs.com/yangxt90/articles/9021530.html http: ...

  5. Mac上安装Jenkins持续部署初体验

    1.首先去官网下载安装包 https://jenkins.io/doc/book/installing/ 安装完成后,很不幸,无法访问他的默认站点 查了一堆资料,有的说环境变量没有配置,有的说没有执行 ...

  6. Django cookie与session

    cookie与session关系 cookie 是保存在客户端浏览器的键值对,浏览器发送请求时候会自动携带. session 1.生成随机字符串 2.回给浏览器,让它写到cookie # {" ...

  7. 转载:TCP连接的状态详解以及故障排查

    FROM:http://blog.csdn.net/hguisu/article/details/38700899 该博文的条理清晰,步骤明确,故复制到这个博文中收藏,若文章作者看到且觉得不能装载,麻 ...

  8. 动态加载css、js引用

    在js代码中动态的加载js.css文件的引用 function addJsCssByLink(type,url) { var doc=document; if(type="js") ...

  9. 【Python系统学习】基础篇

    这次真的是最后一次了!第三次滚Python的基础.走了太多弯路.认真一点!菜鸟! 教程 转义字符 \ 可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\ ...

  10. 转载.怎样在Quartus II中转化HDL文件为bsf文件?

    步骤1 新建或打开Quartus II工程,用QII自带文本编辑器打开HDL文件. 图1 用QII自带的文本编辑器打开HDL文件 步骤2 选择File>Create / Update>Cr ...