15个极简的Python列表代码,拿走即用!

作者:pk哥

公众号:Python知识圈

阅读文本大概需要 3 分钟

Python列表知识点汇总,我总结成了 5 个字:增删改查序。

15个极简的Python列表代码,拿走即用!_第1张图片

就是对列表进行新增元素、删除元素、改变元素、查询元素、列表排序。

接下来对应展开为 Python 习题。

对列表新增元素,有四种方式。

1、用 extend 方法。

>>> l = [1, 2, 3]
>>> j = [4, 5, 6]
>>> l.extend(j)
>>> l
[1, 2, 3, 4, 5, 6]

2、用运算符 + 对列表直接进行拼接。

>>> l = [1, 2, 3]
>>> j = [4, 5, 6]
>>> l + j
[1, 2, 3, 4, 5, 6]

extend 方法和 运算符 + 的效果看起来一致,原理上其实是有差别的,大家可以用查看代码运行原理的在线工具看看就一目了然了。

工具地址:

http://www.pythontutor.com/visualize.html#mode=edit
15个极简的Python列表代码,拿走即用!_第2张图片

运行原理图可以看到,extend 方法是直接在原列表上直接新增,a 列表直接被新增,extend 方法返回的是 None。而用运算符相加的话,相加的结果新开辟一个内存来存放新的列表。

3、用 insert 方法在对应位置插入新的对象。

我们需要给出插入位置的索引,从 0 开始。

>>> num = [1, 2, 4, 5]
>>> num.insert(2, 'three')
>>> num
[1, 2, 'three', 4, 5]

4、用切片的方式将一个对象插入到列表中。

>>> num = [1, 2, 4, 5]
>>> num[2:2] = ['three']
>>> num
[1, 2, 'three', 4, 5]

1、我们可以用 pop 方法来删除列表中的元素。

pop 方法默认是删除最后一个元素。

>>> num = [1, 2, 4, 5]
>>> num.pop()
5
>>> num
[1, 2, 4]

我们也可以指定索引位置删除对应的元素。

>>> num = [1, 2, 4, 5]
>>> num.pop(1)
2
>>> num
[1, 4, 5]

2、用 remove 方法删除元素。

如果删除的元素有多个的话,只会删除先出现的那一个,其他的不会删除。

>>> num = [1, 2, 4, 5, 4]
>>> num.remove(4)
>>> num
[1, 2, 5, 4]

3、如果需要全部清空列表元素,用 claer 方法。

>>> l = [1, 2, 3]
>>> l.clear()
>>> l
[]

修改列表里的元素,我们直接用下标赋值替换就好。

>>> num = [1, 2, 4, 5]
>>> num[1] = 'two'
>>> num
[1, 'two', 4, 5]

查询列表里的元素,我们也用下标直接查看。

>>> num = [1, 2, 4, 5]
>>> num[0]
1

我们也可以查询具体元素对应的索引值,用 index 方法。

>>> l = ['are', 'you', 'ok']
>>> l.index('you')
1

对列表里的元素进行升降序排列

这个可以用 sort 和 sorted 都可以做到。

这两种方式的区别是什么呢?我们直接用运行原理工具查看。

15个极简的Python列表代码,拿走即用!_第3张图片

sort() 直接返回为 None,它直接在原列表上进行排序,原列表改变了,sorted 会开辟一个新的内存空间来存放排序好的列表。

sort 和 sorted 默认都是升序排列的,如果想降序呢?那也简单,把 reverse 参数改成 True就搞定,这个参数默认为 False。

15个极简的Python列表代码,拿走即用!_第4张图片

让列表元素顺序颠倒

这个就是全量把列表里的元素掉头。

1、用 reverse 方法。

>>> num = [1, 2, 3, 4, 5]
>>> num.reverse()
>>> num
[5, 4, 3, 2, 1]

2、用切片的方法搞定。

>>> num = [1, 22, 45, 99, 49]
>>> num[::-1]
[49, 99, 45, 22, 1]

长按扫码关注

一起学Python

------------------


原创不易,莫要白嫖,如果觉得有点用的话,请毫不留情地素质三连吧,分享、点赞、在看、收藏,我不挑,因为这将是我写作更多优质文章的最强动力。
往期精选(????猛戳可查看)
1、Excel查询函数终结者
2、我用Pipenv来管理项目环境,大写的爽

3、整理了我开始分享学习笔记到现在超过250篇优质文章,涵盖数据分析、爬虫、机器学习等方面,别再说不知道该从哪开始,实战哪里找了

你可能感兴趣的:(15个极简的Python列表代码,拿走即用!)