Python 3 – List extend() 方法

Python 3 – List extend() 方法

Python 中,list 是一种非常常用的数据结构,它可以容纳任何数量的任何类型的数据,但是有时候我们需要用到一个 list 从另一个 list 中继承数据,这个时候 list.extend() 方法就非常有用了。它可以迭代地将一个列表中的所有元素添加到另一个列表的末尾。

语法与参数

list.extend(iterable)

iterable:可迭代对象,比如说 list,tuple,string 等。

示例代码

以下示例演示了如何使用 list.extend() 方法向一个 list 添加另一个 list:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)
print(list1)

代码输出:

[1, 2, 3, 4, 5, 6]

接下来,我们可以使用 list.extend() 方法往一个 list 中添加另一个 tuple:

list1 = [1, 2, 3]
tuple1 = (4, 5, 6)
list1.extend(tuple1)
print(list1)

代码输出:

[1, 2, 3, 4, 5, 6]

以上使用了 tuple 作为参数,同样的效果也可以通过使用一个 string 来实现:

list1 = [1, 2, 3]
string1 = "456"
list1.extend(string1)
print(list1)

代码输出:

[1, 2, 3, '4', '5', '6']

extend() 方法的返回值

extend() 方法是作用于 list 这个对象上的,它和 append() 方法一样,会直接修改原来的 list,而不是返回一个新的 list。因此,extend() 方法本身没有返回值。如果你需要在一个 list 的末尾增加一个元素,可以使用 append() 方法。

extend() 方法与 + 运算符的比较

Python 中有两种方式可以将两个 list 连接起来,一个是使用 extend() 方法,另一个是使用 + 运算符,这两个方法有什么区别呢?

前者会将要添加的那个 list 中的所有元素一个一个迭代添加到前一个 list 的末尾,而后者则是直接创建一个新的 list,把两个 list 拼接成一个新的 list。

下面是通过 + 运算符拼接两个 list 的示例代码:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
result = list1 + list2
print(result)

输出结果:

[1, 2, 3, 4, 5, 6]

可以看到,和使用 extend() 方法得到的结果是一样的。

但是这种拼接方式有一个缺点,那就是它会创建一个新的 list,并重新分配内存空间,当 list 非常大时,这个操作的时间和空间效率都是相对较低的。

结论

Python 的 list.extend() 方法可以方便地将一个 list 中的所有元素添加到另一个 list 的末尾,使用起来非常便利。拼接两个 list 的方法,使用 extend() 方法的效率要高于使用 + 运算符的方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程