列表及集合\深浅拷贝

1.join的使用

 str="_"join("lis")目的:将_加入到lis列表中

2.在循环中不能对列表或者字典进行删除操作,删除元素会导致元素的索引改变, 所以容易易出现问题. 尽量量不要再循环中直接去删

除,将删除的元素添加到新列表中在进行删除操作

3.dict.fromkey操作会将列表的值变为字典,返回的为一个新字典,必须要有接受变量

4.set集合

  set集合本身是不可哈希的(可变的),但是内部元素必须为可哈希的

  set本身内部元素是不可重复的,可利用这个特性去删除重复元素

5.浅拷贝和深拷贝

lis1=[1,23,3]

lis2=lis1

lis1.append(5)

那么lis2he lis1都会出现5,因为两者引用地址是相同的,

lis1=[1,2,3]

lis2=lis1.copy()

lis1.append(5)

只有lis1会出现5,因为两个列表的地址不同

lis1=[1,2,3,[1,2,3]]

lis2=lis1.copy()

lis[3].append(5)

lis2和lis1中的都会出现5这个元素,因为第二层的列表引用地址还是相同的,因此要引用deepcopy,,从而使两个列表无相同引用地址

  

posted @ 2018-07-10 16:07  浮云遮月  阅读(139)  评论(0编辑  收藏  举报