6.1 KiB
6.1 KiB
明白了,你想要一个Python 内置容器(list、tuple、dict、set、frozenset)的方法大全,我给你整理一份详细的参考表,包括用法、说明和示例。
Python 内置容器方法大全
1️⃣ 列表 list
方法 | 说明 | 示例 |
---|---|---|
append(x) |
在末尾添加元素 | lst.append(5) |
extend(iterable) |
在末尾添加多个元素 | lst.extend([6,7]) |
insert(i, x) |
在索引 i 插入元素 | lst.insert(1, 10) |
remove(x) |
删除第一个值为 x 的元素 | lst.remove(5) |
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() |
原地反转 | lst.reverse() |
copy() |
返回列表浅拷贝 | lst2 = lst.copy() |
2️⃣ 元组 tuple
方法 | 说明 | 示例 |
---|---|---|
count(x) |
返回 x 出现次数 | (1,2,2).count(2) → 2 |
index(x[, start[, end]]) |
返回 x 第一次出现的索引 | (1,2,3).index(2) → 1 |
注意:tuple 是不可变类型,没有 append、remove、sort 等方法。
3️⃣ 集合 set
方法 | 说明 | 示例 | |
---|---|---|---|
add(x) |
添加元素 | s.add(5) |
|
update(*iterables) |
添加多个元素 | s.update([1,2], {3,4}) |
|
remove(x) |
删除元素,元素不存在会报错 | s.remove(3) |
|
discard(x) |
删除元素,元素不存在不会报错 | s.discard(3) |
|
pop() |
随机删除并返回一个元素 | s.pop() |
|
clear() |
清空集合 | s.clear() |
|
copy() |
浅拷贝 | s2 = s.copy() |
|
union(*others) |
并集 | `s | s2或 s.union(s2)` |
intersection(*others) |
交集 | s & s2 或 s.intersection(s2) |
|
difference(*others) |
差集 | s - s2 或 s.difference(s2) |
|
symmetric_difference(other) |
对称差 | s ^ s2 或 s.symmetric_difference(s2) |
|
issubset(other) |
是否为子集 | s.issubset(s2) |
|
issuperset(other) |
是否为超集 | s.issuperset(s2) |
|
isdisjoint(other) |
是否无交集 | s.isdisjoint(s2) |
4️⃣ 不可变集合 frozenset
方法 | 说明 | 示例 |
---|---|---|
与 set 类似,但没有 add , remove , discard , pop , clear , update 等可变方法。 |
||
union , intersection , difference , symmetric_difference 可用 |
fs1.union(fs2) |
5️⃣ 字典 dict
方法 | 说明 | 示例 |
---|---|---|
get(key[, default]) |
返回 key 对应的值,key 不存在返回 default | d.get('a', 0) |
keys() |
返回所有键 | d.keys() |
values() |
返回所有值 | d.values() |
items() |
返回 (key,value) 元组列表 | d.items() |
pop(key[, default]) |
删除 key 并返回对应值 | d.pop('a', 0) |
popitem() |
删除并返回字典中的最后一对键值 | d.popitem() |
update([other]) |
用另一个字典更新 | d.update({'a':10}) |
clear() |
清空字典 | d.clear() |
copy() |
浅拷贝 | d2 = d.copy() |
setdefault(key[, default]) |
如果 key 不存在,则插入 key:default 并返回 default | d.setdefault('a',0) |
🔹 总结
-
序列(sequence) → list, tuple
-
集合(set) → set, frozenset
-
映射(mapping) → dict
-
可变 vs 不可变
- list, set, dict → 可变
- tuple, frozenset → 不可变
如果你愿意,我可以帮你画一张 Python 内置容器方法全景图,把所有容器、可变/不可变、方法一目了然地展示出来,非常适合学习和查阅。
你希望我帮你画吗?