学习python第四天——列表方法

1、append()

列表append()昨天说过用于在列表尾部添加元素

2、clear()

用于列表元素清除,释放内存

 

 

 3、copy()

字面意思复制,拷贝分为浅拷贝和深拷贝,copy()方法属于列表深拷贝。

深拷贝和浅拷贝抄自其他网页:

浅拷贝

  • 1、对于 不可 变类型 Number String Tuple,浅复制仅仅是地址指向,不会开辟新空间。
  • 2、对于 可 变类型 List、Dictionary、Set,浅复制会开辟新的空间地址(仅仅是最顶层开辟了新的空间,里层的元素地址还是一样的),进行浅拷贝
  • 3、浅拷贝后,改变原始对象中为可变类型的元素的值,会同时影响拷贝对象的;改变原始对象中为不可变类型的元素的值,只有原始类型受影响。 (操作拷贝对象对原始对象的也是同理)

深拷贝

  • 1、浅拷贝,除了顶层拷贝,还对子元素也进行了拷贝(本质上递归浅拷贝)
  • 2、经过深拷贝后,原始对象和拷贝对象所有的子元素地址都是独立的了
  • 3、可以用分片表达式进行深拷贝
  • 4、字典的copy方法可以拷贝一个字典

深拷贝对6种基本类型的影响

我们对3种可变类型3种不可变类型进行深拷贝。
结果发现,和浅拷贝几乎一致。

其实这也好理解,因为的深拷贝对比浅拷贝,强调的是 递归,强调的是资源素。
对了顶层的操作,深浅拷贝无异。

 

 我简单理解啊就是浅拷贝是拷贝的数据的地址

深拷贝是拷贝数据

浅拷贝的数据与原属数据改变会相互影响,而深拷贝则不会相互影响,普通的变量赋值均属于浅拷贝

4、count()

用于访问列表内某个元素值存在的数量

 5、extend()

 extend()用于列表扩展,没有返回值。

 

 6、insert()

昨天学习过insert()方法,用于在列表中插入元素

7、index()

用于查找列表中某个元素的索引,不存在时报错。参数为元素,查找开始位置,查找结束位置

8、pop()、remove()

昨天学习过,用于删除其中元素使用。

9、reverse()

reverse() 函数用于反向列表中元素。

 

 10、sort()

sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。  

猜你喜欢

转载自www.cnblogs.com/xiaobai-yang/p/11616143.html