速查表

编号 函数 说明
0 list[]、list[:] 索引与切片
1 append 追加元素
2 extend 列表合并
3 [0]="xxx" 修改元素
4 in 是否在列表中
5 not in 不在列表中
6 index 查找并返回索引,未找到报异常。
7 count 统计出现次数
8 del 使用下标进行删除
9 pop 删除最后一个元素
10 remove 根据元素的值进行删除
11 sort 排序
12 reverse 顺序反转
13 clear 清空列表
14 [] * 5 计算

列表的定义

list = ["热干面", "三鲜豆皮", "糊汤粉"]
print(list)
print(list[0])
print(list[1])
print(list[2])

切片

说明:与字符串的切片操作相同

print(list[1:])
print(list[:2])
print(list[1:-1])

遍历

for 循环

for x in list:
    print(x)

while 循环

i = 0
while i < len(list):
    print(list[i])
    i += 1

列表的相关操作

1. append

说明:向列表追加元素

示例:

list.append("烧麦")
print(list)

2. extend

说明:将另一个集合中的元素逐一添加到列表中

示例:

list1 = ["热干面", "三鲜豆皮",]
list2 = ["糊汤粉", "烧麦"]
list1.extend(list2)
print(list1)
['热干面', '三鲜豆皮', '糊汤粉', '烧麦']

3. insert

说明:在指定位置 index 前插入元素 object

示例:

list = ["热干面", "三鲜豆皮",]
list.insert(1, "米酒汤圆")
print(list)
['热干面', '米酒汤圆', '三鲜豆皮']

4. 修改元素

说明:使用下标,找到指定元素,直接赋值

示例:

list = ["热干面", "三鲜豆皮", "糊汤粉"]
list[1] = "米酒汤圆"
print(list)

5. in

说明:是否在列表中

示例:

if "三鲜豆皮" in list:
    print("这家店有我最爱吃的豆皮。")
else:
    print("什么店,豆皮都不卖!")

6. not in

说明:不在列表中

示例:

if "三鲜豆皮" not in list:
    print("什么店,豆皮都不卖!")
else:
    print("这家店有我最爱吃的豆皮。")

7. index

说明:查找并返回索引,未找到报异常。

示例:

list = ["热干面", "三鲜豆皮", "米酒汤圆", "热干面", "烧麦"]
i = list.index("热干面", 1, 3)
print(i)

Traceback (most recent call last):
  File "/Users/dong/Desktop/py/hello.py", line 2, in <module>
    i = list.index("热干面", 1, 3)
ValueError: '热干面' is not in list
i = list.index("热干面", 1, 4)
print(i)

8. count

说明:统计出现次数

示例:

c = list.count("热干面")
print(c)

9. del

说明:使用下标进行删除

示例:

list = ["热干面", "三鲜豆皮", "糊汤粉"]
del list[1]
print(list)

10. pop

说明:删除最后一个元素

示例:

list.pop()
print(list)

11. remove

说明:根据元素的值进行删除

示例:

list.remove("热干面")
print(list)

12. sort

说明:按从小到大排序。参数 reverse=True 可改为倒序,由大到小。

示例:

list = [1, 4, 2, 3]
list.sort()
print(list)

list.sort(reverse=True)
print(list)

13. reverse

说明:顺序反转。

示例:

list = [1, 4, 2, 3]
list.reverse()
print(list)

14. clear

说明:清空列表

示例:

list.clear()
print(list)

15. 计算

示例:

hello = ['hello'] * 5
print(hello)

列表嵌套

说明:所谓列表嵌套,就是说列表里面的元素,也是列表。

courses = [
    ["html", "css"],
    ["python", "php", "ruby"]
]

print(courses)
print(courses[1][0])
i = 1
for course in courses:
    print("科目%d包含课程:" % i)
    i += 1

    for c in course:
        print(c)

列表推导式

就是轻量级循环创建列表

list = [x for x in range(4)]
list = [x for x in range(4, 10) if x % 2 == 0]

练习

[40, 20, 30] 找出最大的数