什么是加之间的差异,在python追加为列表操作? [英] What's the difference between plus and append in python for list manipulation?
问题描述
可能重复:结果
<一href=\"http://stackoverflow.com/questions/2022031/python-append-vs-operator-on-lists-why-do-these-give-different-results\">Python追加()与+运算符的列表,为什么这些给出不同的结果?
什么是Python中?
What is the actual difference between "+" and "append" for list manipulation in Python?
推荐答案
有两个主要区别。首先是 +
是比接近的含义
: .extend
.append
There are two major differences. The first is that +
is closer in meaning to .extend
than to .append
:
>>> a = [1, 2, 3]
>>> a + 4
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
a + 4
TypeError: can only concatenate list (not "int") to list
>>> a + [4]
[1, 2, 3, 4]
>>> a.append([4])
>>> a
[1, 2, 3, [4]]
>>> a.extend([4])
>>> a
[1, 2, 3, [4], 4]
另外,比较突出的,不同之处在于方法的工作就地: .extend
其实像 + =
- 事实上,它具有完全相同的行为, + =
,但它可以接受任何可迭代的,而 + =
只能采取另一个列表。
The other, more prominent, difference is that the methods work in-place: .extend
is actually like +=
- in fact, it has exactly the same behavior as +=
except that it can accept any iterable, while +=
can only take another list.
这篇关于什么是加之间的差异,在python追加为列表操作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!