1. 列表自身的常用方法(CRUD + 其他)
  2. 常用于列表的内置函数

两者结合,才能全面掌握对列表的操作!


✅ 一、列表自身的方法(通过 list.method() 调用)

方法功能说明是否修改原列表示例
append(x)在末尾添加一个元素✅ 是lst.append(4)
extend(iterable)在末尾添加多个元素(展开 iterable)✅ 是lst.extend([4,5])
insert(i, x)在索引 i 处插入元素 x✅ 是lst.insert(0, 'a')
remove(x)删除第一个值为 x 的元素✅ 是lst.remove(2)
pop([i])删除并返回索引 i 的元素(默认最后一个)✅ 是lst.pop() → 返回值
clear()清空列表所有元素✅ 是lst.clear()
index(x[, start[, end]])返回第一个等于 x 的索引❌ 否lst.index(3)
count(x)统计 x 出现的次数❌ 否lst.count(2)
sort(key=None, reverse=False)原地排序✅ 是lst.sort(reverse=True)
reverse()原地反转顺序✅ 是lst.reverse()
copy()返回浅拷贝❌ 否new_lst = lst.copy()
📌 所有以 . 调用的方法都属于列表对象本身。

✅ 二、常用于列表的 内置函数(Built-in Functions)

这些函数不改变原列表,而是返回结果,适用于任何可迭代对象(包括列表)。

内置函数功能说明适用对象示例
len(lst)返回列表长度(元素个数)任意序列/容器len([1,2,3]) → 3
max(lst)返回最大值可比较元素的可迭代对象max([1,5,3]) → 5
min(lst)返回最小值同上min([1,5,3]) → 1
sum(lst[, start])求和(可选起始值)数字组成的可迭代对象sum([1,2,3]) → 6
sum([1,2], 10) → 13
sorted(lst, key=None, reverse=False)返回排序后的新列表任意可迭代对象sorted([3,1,2]) → [1,2,3]
reversed(lst)返回反向迭代器(需转 list)序列list(reversed([1,2,3])) → [3,2,1]
all(lst)判断是否所有元素为真可迭代对象all([1,2,'a']) → True
any(lst)判断是否有任一元素为真可迭代对象any([0,0,1]) → True
enumerate(lst, start=0)返回索引-值对的迭代器可迭代对象list(enumerate(['a','b'])) → [(0,'a'),(1,'b')]
zip(*iterables)并行打包多个列表多个可迭代对象list(zip([1,2], ['a','b'])) → [(1,'a'),(2,'b')]
map(func, lst)对每个元素应用函数可迭代对象list(map(str, [1,2])) → ['1','2']
filter(func, lst)过滤满足条件的元素可迭代对象list(filter(lambda x: x>0, [-1,2])) → [2]
list(iterable)将可迭代对象转为列表任意可迭代对象list("abc") → ['a','b','c']

⚠️ 注意:

  • sum() 仅适用于数字(整数、浮点数等),不能对字符串列表求和(可用 ''.join() 代替)。
  • reversed()map()filter()enumerate()zip() 返回的是迭代器,通常需要用 list() 包裹才能看到完整内容。

✅ 三、对比总结:方法 vs 内置函数

类别特点典型代表
列表方法通过 . 调用,多数会修改原列表.append(), .sort(), .pop()
内置函数直接调用,不修改原数据,返回新结果len(), max(), sorted(), sum()

🌰 示例对比:

lst = [3, 1, 2]

# 内置函数:不改变 lst
print(sorted(lst))  # [1, 2, 3]
print(lst)          # [3, 1, 2] ← 未变

# 列表方法:改变 lst
lst.sort()
print(lst)          # [1, 2, 3] ← 已变

✅ 四、学习建议

  • 日常操作优先用内置函数:如 len()sum()max() —— 简洁、高效、通用。
  • 需要修改列表时用方法:如添加、删除、排序(原地)。
  • 避免混淆

    • lst.sort()(方法,原地)
    • sorted(lst)(函数,返回新列表)