一、列表
1、列表索引
输出列表最后一个元素:
list1 = [1, 2, 3, 4, 5]
result = list1[-1]
print(result)
# 输出:
5
2、列表切片
语法:list_name[x:y:z] 其中,x是起始索引,y是终止索引,z是步长,输出结果包括第x个,但不包括第y个,此外,如果x为负数,则表示输出顺序为倒叙
其中,输出内容是:起始索引 到 终止索引-1
1)list_name[x:y] 表示取第x到第y-1个元素
list1 = [0, 1, 2, 3, 4, 5] # 列表共有6个元素,长度为6
result = list1[0:6]
print(result)
# 输出:
[0, 1, 2, 3, 4, 5]
2)list_name[x:] 取第x个元素以及它之后的内容
list1 = [0, 1, 2, 3, 4, 5] # 列表共有6个元素,长度为6
result = list1[1:]
print(result)
# 输出:
[1, 2, 3, 4, 5]
3)list_name[::-1] 倒序输出
list1 = [0, 1, 2, 3, 4, 5] # 列表共有6个元素,长度为6
result = list1[::-1]
print(result)
# 输出:
[5, 4, 3, 2, 1, 0]
list_name[::-2] 倒叙输出,步长为2(即:隔一个输出一个)
list1 = [0, 1, 2, 3, 4, 5] # 列表共有6个元素,长度为6
result = list1[::-2]
print(result)
# 输出:
[5, 3, 1]
3、列表乘以一个数
list1 = [0, 1, 2, 3, 4, 5]
list2 = list1 * 3
print(list2)
# 输出:
[0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5]
4、两个列表相加(连接)
list1 = [0, 1, 2, 3, 4, 5]
list2 = [6, 7, 8, 9, 10]
result = list1 + list2
print(result)
# 输出:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
5、列表的增删改查
1)增加
方法1:用相加(连接)的方式(可以增加多个元素):
list1 = [0, 1, 2, 3, 4, 5]
result = list1 + [6]
print(result)
# 输出:
[0, 1, 2, 3, 4, 5, 6]
方法2:用append()
list1 = [0, 1, 2, 3, 4, 5]
list1.append(6)
print(list1)
# 输出:
[0, 1, 2, 3, 4, 5, 6]
方法3:用extend可以追加元素到列表中(可以追加多个元素)
list1 = [0, 1, 2, 3, 4, 5]
list1.extend([6])
print(list1)
# 输出:
[0, 1, 2, 3, 4, 5, 6]
方法4:在指定位置索引插入元素,该位置原来的元素以及之后的元素都自动向后移一位
list1 = [0, 1, 2, 3, 4, 5]
list1.insert(1, 99) # 在索引为1的位置插入元素99
print(list1)
# 输出:
[0, 99, 1, 2, 3, 4, 5]
2)删除
方法1:用pop()弹出最后一个元素(可以将被删除的元素赋值给其他变量)
list1 = [0, 1, 2, 3, 4, 5]
a = list1.pop()
print(a)
print(list1)
# 输出:
5
[0, 1, 2, 3, 4]
方法2:用remove()删除指定的元素(不能讲被删的元素赋值给其他变量)
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧']
list1.remove('孙悟空')
print(list1)
# 输出
['猪八戒', '沙和尚', '唐僧']
方法3:用del删除整个列表
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧']
del list1
print(list1)
# 输出:
NameError: name 'list1' is not defined
3)更改(重新赋值)
方法1:通过索引,重新赋值
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧']
list1[1] = 111
print(list1)
# 输出:
['孙悟空', 111, '沙和尚', '唐僧']
方法2:通过切片给前两个元素重新赋值
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧']
list1[:2] = [111, 222]
print(list1)
# 输出:
[111, 222, '沙和尚', '唐僧']
4)查看
方法1:用count()查看某个元素出现的次数
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '唐僧']
result = list1.count('唐僧')
print(result)
# 输出:
2
方法2:用index()查看指定元素的索引(返回从左到右第一次出现该元素的索引),如果元素不在列表中,则报错。
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '唐僧']
result = list1.index('唐僧')
print(result)
# 输出:
3
此外,用index(元素, x, y)还可以返回从索引x-y(包括x,不包括y)之间进行查找
list1 = ['孙悟空', '猪八戒', '沙和尚', '唐僧', '唐僧']
result = list1.index('沙和尚', 0, 2)
print(result)
# 输出:
ValueError: '沙和尚' is not in list
6、列表排序
7、列表生成式