python append和extend区别
时间: 2024-10-07 13:05:34 浏览: 38
python append用法
在Python中,`append()` 和 `extend()` 都是用于向序列(如列表)添加元素的方法,但它们的工作方式略有不同:
1. **`append()`**:
- 这个方法用于将单个元素添加到列表的末尾。例如:
```python
numbers = [1, 2]
numbers.append(3)
print(numbers) # 输出: [1, 2, 3]
```
- 如果你试图将一个非单一元素的集合(如另一个列表)作为参数传递给 `append()`,Python会先将其转换为一个元组,然后再添加到目标列表:
```python
list1 = [1, 2]
list1.append([3, 4]) # 等同于 list1.append((3, 4))
print(list1) # 输出: [1, 2, (3, 4)]
```
2. **`extend()`**:
- 这个方法则用于逐个将一个可迭代对象(如列表、元组、集合等)中的所有元素追加到另一个列表的末尾,保持原有的结构。例如:
```python
list1 = [1, 2]
list2 = [3, 4]
list1.extend(list2)
print(list1) # 输出: [1, 2, 3, 4]
```
- 使用 `extend()` 可以直接将一个列表复制的所有元素添加到另一个列表,效率较高。
总结来说,`append()` 用于添加单个元素,而 `extend()` 用于连接两个列表。当你想一次性添加多个元素或从其他可迭代对象中添加元素时,应该选择 `extend()`。
阅读全文