什么是 Python List?
在 Python 中,list 是一种有序、可变的集合类型,可以存储任意类型的元素(包括数字、字符串、对象甚至其他列表)。
列表使用方括号 [] 定义,元素之间用逗号分隔。
my_list = [1, 'hello', 3.14, True]
常用操作与方法
- 创建列表:使用
[]或list() - 访问元素:通过索引
my_list[0] - 修改元素:直接赋值
my_list[0] = 'new value' - 添加元素:
append(item):在末尾添加insert(index, item):在指定位置插入extend(iterable):追加多个元素
- 删除元素:
remove(item):移除第一个匹配项pop(index):弹出并返回指定索引元素(默认最后一个)del my_list[index]:删除指定位置
- 查找与计数:
index(item):返回首次出现的索引count(item):统计出现次数
- 排序与反转:
sort():原地排序reverse():原地反转
列表切片(Slicing)
切片是 Python 列表最强大的特性之一,语法为 list[start:end:step]。
nums = [0, 1, 2, 3, 4, 5]
print(nums[1:4]) # [1, 2, 3]
print(nums[:3]) # [0, 1, 2]
print(nums[::2]) # [0, 2, 4]
print(nums[::-1]) # [5, 4, 3, 2, 1, 0](反转)
注意:切片操作返回的是新列表,不会修改原列表。
实用示例
1. 列表推导式(List Comprehension)
# 生成平方数列表
squares = [x**2 for x in range(1, 6)]
# 结果: [1, 4, 9, 16, 25]
2. 合并两个列表
a = [1, 2]
b = [3, 4]
c = a + b # [1, 2, 3, 4]
3. 检查元素是否存在
if 'apple' in fruits:
print("有苹果!")
常见陷阱与注意事项
- 列表是可变对象,赋值时是引用传递(浅拷贝)
- 避免在遍历列表时直接修改其长度(如删除元素),建议使用列表推导式或反向遍历
list.sort()会修改原列表,而sorted(list)返回新列表