列表是一种可变的数据类型,在列表中 可以存储任意数据类型。
在Python
中,列表以[]
进行表示。
一. 列表的增删改查
字符串可以通过索引和切片来获取字符串中想要的一部分数据,在列表中同样可以对列表进行索引和切片,来获取列表中的一部分数据。
也可以通过索引和切片来获取列表中的元素。
list = ["马化腾","马云","王健林","许家印","任正非"]
print(list[0]) # "马化腾"
可以通过对列表的切片,来修改列表中的元素:
list = ["马化腾","马云","王健林","许家印","任正非"]
list[0] = "习"
# ["习","马云","王健林","许家印","任正非"]
print(list)
注意:如果在对列表切片修改时,如果切片的是列表中的某几个元素的范围,那么在进行修改这几个元素的时候,如果传递的是一个字符串,那么 会将这字符串中全部字符拆开,替换到切片出来的元素所在位置中;如果传递的是一个列表,那么 会将列表中每一个元素替换到切片出来的元素的空位中 。
list = ["马化腾","马云","王健林","许家印","任正非"]
list[1:4] = ["王者荣耀","魔兽世界","DNF", "逆水寒,"]
print(list) # ['马化腾', '王者荣耀', '魔兽世界', 'DNF', '逆水寒,', '任正非']
list = ["马化腾","马云","王健林","许家印","任正非"]
list[1:4] = "王者荣耀,魔兽世界,DNF, 逆水寒,"
print(list) # ['马化腾', '王', '者', '荣', '耀', ',', '魔', '兽', '世', '界', ',', 'D', 'N', 'F', ',', ' ', '逆', '水', '寒', ',', '任正非']
二. 列表的增删改查
增加
list.append(index):
向列表的末尾添加一个元素。
该方法一次只能添加一个元素,但是可以添加任意类型的元素。
list = ["篮球","足球","网球","台球","羽毛球"]
list.append("排球")
print(list) # ['篮球', '足球', '网球', '台球', '羽毛球', '排球']
list.insert(index, seq):
向列表中的指定位置添加一个元素。
参数解析:
index:列表中的索引下标;
seq:将要添加的元素。
list = ["篮球","足球","网球","台球","羽毛球"]
list.insert(1,"高尔夫") # 表示在列表中第2的位置插入"高尔夫"
print(list) # ['篮球', '高尔夫', '足球', '网球', '台球', '羽毛球']
list.extend():
迭代添加。如果添加的元素是一个字符串,那么该方法会将这个字符串中的每一个元素依次添加到列表中;
如果添加的是一个列表,同样会将列表中的每一个元素依次添加到列表中。
list = ["篮球","足球","网球","台球","羽毛球"]
list.extend("乒乓球") # ['篮球', '足球', '网球', '台球', '羽毛球', '乒', '乓', '球']
list.extend(["乒乓球"]) # ['篮球', '足球', '网球', '台球', '羽毛球', '乒乓球']
删除
list.pop(index):
删除。
参数解析:
index:列表中的元素索引值。
如果向该方法传入了索引值,那么会删除索引值所在的列表元素;如果没有传入索引值,那么默认删除列表中最后一个元素。
注意:该方法再删除列表中元素的时候,会将被删除的元素返回。
list = ["马化腾","马云","王健林","许家印","任正非"]
data = list.pop(2)
print(data) # 王健林
print(list) # ['马化腾', '马云', '许家印', '任正非']
list.remove(seq):
删除。
参数解析:
seq:列表中任意元素。
该方法需要传入将要删除的列表元素。
该方法没有返回值。
list = ["马化腾","马云","王健林","许家印","任正非"]
list.remove("马云")
print(list) # ['马化腾', '王健林', '许家印', '任正非']
del list[index]:
删除。
根据列表的索引值,进行删除。
list = ["马化腾","马云","王健林","许家印","任正非"]
del list[1:3] # 删除列表中的第二和第三个数据
print(list) # ['马化腾', '许家印', '任正非']
list.clear():
清空列表中的全部元素。
list = ["马化腾","马云","王健林","许家印","任正非"]
list.clear()
print(list) # [] 清空之后列表为空。
三. 列表的操作
1. count()
查询列表中某一个元素出现的次数。
如果列表中有这个元素,则返回这个元素在列表中次数,如果没有,则返回0。
list = ["太白","太黑","无色","银王","日天","太白"]
lst = list.count("太白")
print(lst) # 2
info = ["yuze", 18, "男", "矮穷丑", ["高", "富", "帅"], True, None, "狼的眼睛是啥样的"]
print(info.count("女")) # 0
2. sort()
默认是升序排列。如果给该方法一个参数:reverse=True
,则变为降序。
list2 = [1,3,4,798,8,6,4,2,3,0]
list2.sort()
print(list2) # [0, 1, 2, 3, 3, 4, 4, 6, 8, 798]
3. reverse()
列表翻转
list = ["太白","太黑","无色","银王","日天","太白"]
list.reverse()
print(list) # ['太白', '日天', '银王', '无色', '太黑', '太白']
4. join()
拼接。将列表中全部元素以给定的字符进行拼接,拼接成一个字符串。
# 把列表转换成字符串,并使字符串的拼接:join()
list = ["太白","太黑","无色","银王","日天","太白"]
s = "_".join(list)
print(s) # 太白_日天_银王_无色_太黑_太白
4. index()
获取元素在列表中的下标
info = ["yuze", 18, "男", "矮穷丑", ["高", "富", "帅"], True, None, "狼的眼睛是啥样的"]
print(info.index("yuze")) # 0