什么是Python列表?
在Python中,**列表(List)**是最常用的数据结构之一。它是一个有序、可变的集合,可以存储不同类型的数据。
创建列表
创建列表非常简单,使用方括号 [] 即可:
# 空列表
my_list = []
# 带元素的列表
fruits = ['苹果', '香蕉', '橙子']
# 混合类型列表
mixed = [1, 'hello', 3.14, True]
列表的常用操作
1. 访问元素
列表通过索引访问元素,索引从0开始:
fruits = ['苹果', '香蕉', '橙子']
print(fruits[0]) # 苹果
print(fruits[-1]) # 橙子(负索引从末尾开始)
2. 切片操作
切片可以获取列表的子序列:
numbers = [0, 1, 2, 3, 4, 5]
print(numbers[1:4]) # [1, 2, 3]
print(numbers[:3]) # [0, 1, 2]
print(numbers[::2]) # [0, 2, 4](每隔一个取一个)
3. 添加元素
append():在末尾添加insert():在指定位置添加extend():添加多个元素
fruits = ['苹果']
fruits.append('香蕉') # ['苹果', '香蕉']
fruits.insert(1, '橙子') # ['苹果', '橙子', '香蕉']
fruits.extend(['葡萄', '西瓜']) # ['苹果', '橙子', '香蕉', '葡萄', '西瓜']
4. 删除元素
remove():按值删除pop():按索引删除(返回被删除的元素)del:按索引或切片删除
fruits = ['苹果', '香蕉', '橙子']
fruits.remove('香蕉') # ['苹果', '橙子']
last = fruits.pop() # last='橙子', fruits=['苹果']
del fruits[0] # fruits=[]
列表推导式
这是Python的特色功能,简洁高效:
# 生成0到9的平方
squares = [x**2 for x in range(10)]
# [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
# 筛选偶数
evens = [x for x in range(20) if x % 2 == 0]
# [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
常用方法速查
| 方法 | 功能 | 示例 |
|---|---|---|
len() |
获取长度 | len([1,2,3]) # 3 |
sort() |
排序 | [3,1,2].sort() # [1,2,3] |
reverse() |
反转 | [1,2,3].reverse() # [3,2,1] |
index() |
查找索引 | [1,2,3].index(2) # 1 |
count() |
统计次数 | [1,1,2].count(1) # 2 |
copy() |
浅拷贝 | [1,2].copy() # [1,2] |
总结
列表是Python编程中最基础也最强大的工具。掌握列表的各种操作,是学习Python的重要一步。
小提示:如果你需要频繁在列表中间插入或删除元素,考虑使用
collections.deque以获得更好的性能。