python列表(List)必会的13个核心技巧(附实用方法)

列表(List)是Python入门的关键步骤,因为它是编程中最常用的数据结构之一。以下是高效掌握列表的核心技巧实用方法


一、理解列表的本质

  1. 可变有序集合:可随时修改内容,保持元素顺序
  2. 混合类型:一个列表可包含不同类型的数据


mixed = [1, "apple", 3.14, True]

二、必须掌握的13个核心操作

1. 基础操作

fruits = ["apple", "banana", "orange"]

# 访问元素(索引从0开始)
print(fruits[1])      # 输出: banana

# 负索引(从右向左)
print(fruits[-1])     # 输出: orange

# 切片操作 [start:end:step]
print(fruits[0:2])    # 输出: ["apple", "banana"]
print(fruits[::-1])   # 反转列表

2. 修改列表

# 添加元素
fruits.append("pear")       # 末尾添加
fruits.insert(1, "grape")   # 指定位置插入

# 删除元素
fruits.pop()        # 删除末尾元素
fruits.remove("apple")  # 删除特定值
del fruits[0]       # 按索引删除

3. 列表运算

numbers = [1, 2] + [3, 4]   # 列表合并 → [1,2,3,4]
print(numbers * 2)          # 重复列表 → [1,2,3,4,1,2,3,4]

三、5个高效技巧

  1. 列表生成式(快速创建列表)
squares = [x**2 for x in range(5)] # [0, 1, 4, 9, 16]
  1. 快速过滤
evens = [x for x in range(10) if x % 2 == 0] # [0, 2, 4, 6, 8]
  1. 同时遍历元素和索引
for index, fruit in enumerate(fruits): 
      print(f"第{index}个水果是{fruit}")
  1. 列表拆包
first, *middle, last = [1, 2, 3, 4, 5]
# first=1, middle=[2,3,4], last=5

深拷贝与浅拷贝

import copy
new_list = copy.deepcopy(original_list)  # 完全独立的新列表

四、常见易错点

  1. 索引越界
lst = [1, 2]
# print(lst[2])  # 报错!IndexError

修改列表时遍历列表

# 错误示范:
# for item in lst:
#     if condition:
#         lst.remove(item)

# 正确做法:
lst = [x for x in lst if not condition]

嵌套列表的引用问题

matrix = [[0]*3]*3  # 三个子列表其实是同一个对象!
matrix[0][0] = 1    # 会修改所有子列表的第一个元素


五、实战练习建议

基础练习

  • 写一个函数找出列表中的最大值
  • 实现列表去重功能

进阶挑战

# 矩阵转置
matrix = [[1, 2], [3, 4], [5, 6]]
transposed = list(zip(*matrix))  # [(1, 3, 5), (2, 4, 6)]

# 统计元素频率
from collections import Counter
Counter(['a', 'b', 'a', 'c'])  # {'a': 2, 'b': 1, 'c': 1}

六、性能注意事项

操作

时间复杂度

说明

lst[i]

O(1)

随机访问极快

lst.append()

O(1)

尾部添加高效

lst.insert(0)

O(n)

头部插入慢

x in lst

O(n)

需要遍历检查

建议:频繁头部插入时考虑collections.deque


相关文章

三种不同方式,教你详细解析python反转列表(建议收藏)

今天为大家带来的内容是:三种不同方式,教你详细解析python反转列表(建议收藏)文章主要介绍了python反转列表的三种方式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学...

python入门经典案例—list列表翻转列表

在 Python 中,翻转(反转)列表是一个基础但重要的操作。以下是几种常用的方法及其详细说明:1. 使用切片操作(最简洁)my_list = [1, 2, 3, 4, 5] reversed_lis...

7 种在 Python 中反转列表的智能方法

1. 使用reverse()方法(原地)my_list=[10,12,6,34,23] my_list.reverse() print(my_list) #output:[23, 34, 6, 12,...

python入门 到脱坑 基本数据类型—列表

以下是Python列表(List)的入门详解,包含基础操作、常用方法和实用技巧,适合初学者系统掌握:一、列表基础1. 定义列表# 空列表 empty_list = [] # 包含不同类型元素的列表...

Python 中反转字符串:不可变性的解释

在 Python 中, 字符串是不可变的 ,这意味着一旦创建了一个字符串,它就不能被更改 。这种不可变性使得在严格意义上无法原地反转字符串,因为您不能修改原始字符串对象。看看下面的代码:s = ...