python中用于列表操作的 plus 和 append 有什么区别? [英] What's the difference between plus and append in python for list manipulation?
问题描述
可能的重复:
Python append() 与 + 运算符在列表中,为什么这些会给出不同的结果?
Python 中列表操作的+"和append"之间的实际区别是什么?
有两个主要区别.第一个是 +
更接近于 extend
而不是 append
:
另一个更突出的区别是这些方法就地工作:extend
实际上就像 +=
- 事实上,它的行为与+=
除了它可以接受任何迭代,而 +=
只能接受另一个列表.
Possible Duplicate:
Python append() vs. + operator on lists, why do these give different results?
What is the actual difference between "+" and "append" for list manipulation in Python?
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]
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中用于列表操作的 plus 和 append 有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!