python中extend用法
时间: 2025-05-03 10:49:24 浏览: 109
### Python `extend` 方法详解
#### 定义与功能
`extend` 方法用于将一个可迭代对象(如列表、元组、集合等)中的所有元素添加到当前列表的末尾。这使得能够高效地合并两个或多个序列[^1]。
#### 基本语法
```python
list.extend(iterable)
```
这里的参数 `iterable` 可以是任何支持迭代的对象,比如另一个列表、字符串、字典键/值视图等。
#### 实际应用案例
下面通过几个具体的例子展示如何使用 `extend()`:
##### 合并相同类型的列表
当希望把两个同质化的列表连接起来时,可以直接调用此方法:
```python
demo_list = ["apple", "banana"]
new_items = ["orange", "grape"]
# 使用 extend 将 new_items 的每一个元素加入到 demo_list 中
demo_list.extend(new_items)
print(demo_list) # 输出: ['apple', 'banana', 'orange', 'grape']
```
##### 添加其他可迭代对象的内容
除了处理列表外,还可以向现有列表中追加来自不同种类的数据结构里的项目:
```python
numbers = [1, 2, 3]
more_numbers_tuple = (4, 5, 6)
# 把 tuple 类型变量 more_numbers_tuple 转换成 list 并附加至 numbers 列表后面
numbers.extend(more_numbers_tuple)
print(numbers) # 输出: [1, 2, 3, 4, 5, 6]
letters_set = {'a', 'b'}
characters_string = "xyz"
# 对 set 和 string 进行同样的操作
numbers.extend(letters_set)
numbers.extend(characters_string)
print(numbers) # 输出可能是类似这样的顺序:[1, 2, 3, 4, 5, 6, 'a', 'b', 'x', 'y', 'z'] (注意set无序)
```
值得注意的是,在上述最后一个例子中,由于 sets 是无序集,因此最终输出的实际顺序可能会有所变化[^4]。
#### 特殊情况说明
如果尝试对非可变序列(例如不可更改大小的容器类实例)执行 `extend` 操作,则会引发错误;另外需要注意的是,对于某些特定类型的输入(像字典),仅其 key 或 value 会被提取出来作为新成员加入目标列表[^3]。
阅读全文
相关推荐


















