列表的增删改查
切片
在Python中,切片(slice)是对序列型对象(如list, string, tuple)的一种高级索引方法。普通索引只取出序列中一个下标对应的元素,而切片取出序列中一个范围对应的元素,这里的范围不是狭义上的连续片段。
增
heros.append():在列表的最后添加一个新的元素,每次只能添加一个元素。
heros.extend():参数必须是可迭代对象,新的内容是追加到原列表的最后一个元素的后面。
heros.insert():第一个参数指定待插入的位置,第二个位置指定待插入的元素。
注意:extend()可以算是两个集合的拼接,append是一个元素追加到一个集合的末尾。
删
remove():删除指定元素
注意:1.如果列表中存在多个匹配的元素,那么它只会删除最左边第一个。
2.如果指定的元素不存在,那么程序就会报错。
pop():参数是元素的下标索引值,默认元素的下标索引值为-1,也就是相当于列表最后一个元素。
注意:使用过程中注意索引越界
clear():清空列表
改
当想要改变列表中的某个元素时,可以通过元素的索引下标来更改指定元素
heros = ["蜘蛛侠", "绿巨人", "黑寡妇", "鹰眼", "灭霸", "雷神"]
heros[4] = "钢铁侠"
- 切片实现:
heros[3:] = ["武松", "林冲", "李逵"]
第一步:将赋值号(=)左边指定的内容删除
第二步:将包含在赋值号(=)右边的可迭代对象中的片段插入左边被删除的位置
查
count():查找某个元素出现的次数
index():查找某个元素的索引值
index(x, start, end):指定查找的开始和结束的位置
nums.index(3, 1, 7)
heros[heros.index("绿巨人")] = "神奇女侠"
如果有多个相同的元素,则会返回第一个相同的元素下标值
nums = [3, 1, 9, 6, 8, 3, 5, 3]
nums.index(3)
列表的排序
nums = [3, 1, 9, 6, 8, 3, 5, 3]
sort():对列表从小到大进行排序。
reverse():对列表从大到小进行排序,或者说原地反转列表中的元素。
- 合并使用
可按照首字母相反的顺序来进行排列
nums.sort(reverse = True)
拷贝列表值
copy():
使用切片方法(浅拷贝):nums_copy2 = nums[:]
列表的拼接
s = [1, 2, 3]
t = [4, 5, 6]
列表的乘法:
将列表内的元素重复若干次
s * 3
嵌套列表:
创建:也叫做二维列表,两种写法等价
- 访问:
for i in matrix:
for each in i:
print(each)
- 稍作修改:
访问嵌套列表中的元素也可以通过下标
例如第一行第一个元素,第二行第二列的元素:
matrix[0][0]
matrix[1][1]
- 通过循环语句来创建和初始化列表
is运算符:也称之为同一性运算符,用于检验两个变量是否指向同一个对象的运算符。
Python对于不同对象的存储机制是不一样的,字符串是不可变的,只需要在内存中开辟一个位置来存储就可以了。相比于字符串来说,列表是可变的,Python并不能确定用户什么时候要在列表里添加或者删除某个元素,Python是会为它们开辟两个位置来存储。