学习python第四天——列表方法
Posted xiaobai-yang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习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 升序(默认)。
以上是关于学习python第四天——列表方法的主要内容,如果未能解决你的问题,请参考以下文章