这是我参与「第四届青训营」笔记创作活动的的第6天
列表
列表是用于存放若干元素的有序序列。列表使用方括号([])来表示,其中的元素写入方括号中,多个元素时用逗号分隔,如 [1, 'go', [0.1, 0.2]]。它的元素可以是任意数据类型,甚至也可以是个列表。
元素之间有顺序关系,每个元素都有自己的位置,每个位置从 0 开始依次标号,这个表示位置的数字叫作索引。
列表被创建之后,我们可以对它做很多操作,包括添加元素,删除元素,修改元素,查找元素等。
创建列表
1.创建空的列表
列表 = []
items = []
2.创建包含元素的列表
列表 = [元素1, 元素2, ..., 元素N]
>>> items = [1, 2, 3]
列表元素的获取
1.通过索引获取元素
元素 = 列表[索引]
>>> letters = ['a', 'b', 'c']
>>> letters[2]
’c’
2.通过元素获取索引
这种方式和上面相反,首先在列表中寻找元素,然后返回元素对应的索引
索引 = 列表.index(元素)
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.index(‘c’)
2
3.查看元素是否存在于列表中
要想查看元素是否存在于列表中,需要借助 Python 的关键字 in,使用如下:
布尔值 = 元素 in 列表
>>> letters = [‘a’, ‘b’, ‘c’]
>>> ‘a’ in letters
True
>>> ‘z’ in letters
False
4.统计元素在列表中的个数
统计元素在列表中的个数,或者说是元素在列表中出现的次数
个数 = 列表.count(元素)
>>> numbers = [1, 2, 2, 3, 4, 5, 5, 7]
>>> numbers.count(5)
2
列表元素的添加
我们可以很灵活地向列表添加元素,如以追加的形式向列表末尾添加一个元素;以插入的形式向列表的任意位置插入元素;或者将一个列表中的所有元素批量的添加到另一个列表中。
1.向列表末尾追加元素
列表.append(元素)
>>> letters = [‘a’, ‘b’]
>>> letters.append(‘c’)
>>> letters
[‘a’, ‘b’, ‘c’]
2.向列表的任意位置插入元素
列表.insert(索引, 元素)
>>> letters = [‘a’, ‘b’]
>>> letters.insert(0, ‘c’)
>>> letters
[‘c’, ‘a’, ‘b’]
>>> letters.insert(2, ‘d’)
>>> letters
[‘c’, ‘a’, ‘d’, ‘b’]
3.列表末尾追加另一个列表的所有元素
列表.extend(另一列表)
>>> letters = [‘a’, ‘b’]
>>> letters.extend([‘c’, ‘d’, ‘e’])
>>> letters
[‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
列表元素的删除
1.按索引删除元素
pop(索引) 会将索引对应的元素从列表中删除,同时返回这个元素。
元素 = 列表.pop(索引)
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.pop(0)
’a’
>>> letters
[‘b’, ‘c’]
也可以不传递索引,这样的话默认删除并返回最后一个元素
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.pop()
’c’
>>> letters
[‘a’, ‘b’]
2.按索引删除元素(del 方法)
删除一个列表元素也可以使用 Python 中的 del 关键字,如下:
del 列表[索引]
>>> letters = [‘a’, ‘b’, ‘c’]
>>> del letters[0]
>>> letters
[‘b’, ‘c’]
3.直接删除元素
直接删除元素时,Python 会先在列表中遍历该元素,然后将匹配到的第一个元素删除
列表.remove(元素)
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.remove(‘b’)
>>> letters
[‘a’, ‘c’]
4.清空所有元素
清空所有元素即是把列表元素全部删除,最后仅为列表仅为 []
列表.clear()
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.clear()
>>> letters
[]
列表元素的修改
1.通过赋值修改列表元素
列表[索引] = 新元素
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters[2] = 'd’
>>> letters
[‘a’, ‘b’, ‘d’]
2.反转整个列表
反转整个列表会将所有的元素倒序排列
列表.reverse()
>>> letters = [‘a’, ‘b’, ‘c’]
>>> letters.reverse()
>>> letters
[‘c’, ‘b’, ‘a’]
3.列表元素排序
列表.sort()
>>> numbers = [2, 4, 5, 2, 1, 5, 7, 3]
>>> numbers.sort()
>>> numbers
[1, 2, 2, 3, 4, 5, 5, 7]
也可以通过指定 sort 方法的 reverse 参数来倒序排列
列表.sort(reverse=True)
>>> numbers = [2, 4, 5, 2, 1, 5, 7, 3]
>>> numbers.sort(reverse=True)
>>> numbers
[7, 5, 5, 4, 3, 2, 2, 1]