Append、extend区别
时间: 2024-02-28 18:56:13 浏览: 68
在Python中,列表(list)是一种常用的数据结构。列表中包含了多个元素,可以通过添加元素来扩展列表。在列表中添加元素的常用方法有append()和extend()。
append()方法用于在列表的末尾添加一个元素。例如:
```
list1 = [1, 2, 3]
list1.append(4)
print(list1)
```
输出结果为:[1, 2, 3, 4]
extend()方法用于在列表的末尾一次性添加多个元素,可以传入一个列表或其他可迭代对象作为参数。例如:
```
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)
print(list1)
```
输出结果为:[1, 2, 3, 4, 5, 6]
可以看到,append()方法只能添加一个元素,而extend()方法可以添加多个元素,且这些元素可以来自于另一个列表或其他可迭代对象。此外,extend()方法可以用"+"操作符来代替,例如:
```
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1 += list2
print(list1)
```
输出结果为:[1, 2, 3, 4, 5, 6]
注意,使用"+"操作符时,实际上是调用了extend()方法。
相关问题
python append和extend区别
在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()`。
python中append和extend区别
`append` 方法可以将一个元素添加到列表的末尾。
`extend` 方法可以将另一个列表中的所有元素添加到当前列表末尾。
举个例子:
```
>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a.append(b)
>>> print(a)
[1, 2, 3, [4, 5, 6]]
>>> a = [1, 2, 3]
>>> a.extend(b)
>>> print(a)
[1, 2, 3, 4, 5, 6]
```
可以看出,使用 `append` 方法将 b 列表添加到 a 列表中,b 列表本身成为了 a 列表的一个元素。而 `extend` 方法将 b 列表中的所有元素添加到 a 列表中,b 列表本身并没有成为 a 列表的元素。
阅读全文