python中用于列表操作的plus和append有什么区别?

What#39;s the difference between plus and append in python for list manipulation?(python中用于列表操作的plus和append有什么区别?)
本文介绍了python中用于列表操作的plus和append有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可能重复:
Python append() vs. + 运算符在列表中,为什么这些会给出不同的结果?

在 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中用于列表操作的plus和append有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)