Python教程-Python中的Append、Extend和Insert的区别
列表:类似于其他编程语言中的动态大小数组,如C++中的向量或Java中的ArrayList。列表不需要是同质的,这正是使其成为Python中最强大工具的主要原因。一个列表可以包含不同的数据类型,如字符串、整数和对象。
正如我们所知,列表是可变的,所以它们可以在创建后进行修改。列表具有多种方法,其中append()、insert()和extend()是最常见的方法之一。
在本教程中,我们将学习如何在Python的列表中使用append()、extend()和insert()函数。
Append()函数
append()函数用于将元素添加到列表的末尾。我们在append()函数中传递的参数将作为单个元素添加到列表的末尾,列表的长度将增加1。
语法
list_name1.append(element_1)
"element_1"可以是整数、元组、字符串或另一个列表。
示例:
list_1 = ['The', 'list_1']
# Using the method
list_1.append('is')
list_1.append('an')
list_1.append('example')
# Displaying the list
print ("The added elements in the given list are: ", list_1)
输出:
The added elements in the given list are: ['The', 'list_1', 'is', 'an', 'example']
Insert()函数
insert()函数用于在列表中的任何所需位置插入值。我们需要在其中传递两个参数;第一个参数是我们要插入元素的索引,第二个参数是要插入的元素。
语法
list_name1.insert(index, element_1)
"element_1"可以是整数、元组、字符串或对象。
示例:
list_1 = ['The', 'is']
# Using the method
list_1.insert(3,'an')
list_1.insert(1, 'list_1')
list_1.insert(4, 'example')
# Displaying the list
print ("The inserted elements in the given list are: ", list_1)
输出:
The inserted elements in the given list are: ['The', 'list_1', 'is', 'an', 'example']
Extend()函数
extend()函数用于将可迭代对象(列表、字符串或元组)的每个元素附加到列表的末尾。这将使列表的长度增加,增加的数量等于作为参数传递的可迭代对象的元素数量。
语法
list_name1.extend(iterable)
示例:
list_1 = ['The', 'list_1']
# Using the method
list_1.extend(['is', 'an', 'example'])
list_1.extend('javatiku')
# Displaying the list
print ("The extended elements in the given list are: ", list_1)
输出:
The extended elements in the given list are: ['The', 'list_1', 'is', 'an', 'example', 'j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't']
Append()、Insert()和Extend()的区别
append()函数 | insert()函数 | extend()函数 |
---|---|---|
传递的参数中的元素将被添加到列表的末尾。 | 传递的参数中的元素将被添加到列表中指定的索引位置。 | 传递的可迭代对象中的每个元素都会被添加到列表的末尾。 |
传递的参数中的元素将作为单个元素添加,不会发生任何更改。 | 传递的参数中的元素将作为单个元素添加到所需位置,不会发生任何更改。 | 传递的可迭代对象中的每个元素都会附加到列表的末尾。 |
列表的长度将增加1。 | 列表的长度将增加1。 | 列表的长度将增加可迭代对象中的元素数量。 |
append()函数具有常数时间复杂度O(1)。 | insert()函数具有线性时间复杂度O(n)。 | extend()函数具有时间复杂度O(k),其中"k"是可迭代对象的长度。 |
让我们在一个程序中比较这三种方法:
list_name1 = ['this', 'is', 'LIST_1']
list_name2 = ['this', 'is', 'of', 'LIST_2']
list_name3 = ['this', 'is', 'LIST_3']
S = ['Example_1', 'Example_2']
# Using methods
list_name1.append(S)
list_name2.insert(2, S)
list_name3.extend(S)
# Displaying lists
print ("The appended elements in the given list are: ", list_name1)
print ("The inserted elements in the given list are: ", list_name2)
print ("The extended elements in the given list are: ", list_name3)
输出:
The appended elements in the given list are: ['this', 'is', 'LIST_1', ['Example_1', 'Example_2']]
The inserted elements in the given list are: ['this', 'is', ['Example_1', 'Example_2'], 'of', 'LIST_2']
The extended elements in the given list are: ['this', 'is', 'LIST_3', 'Example_1', 'Example_2']
结论
在本教程中,我们讨论了在Python中用于修改列表的不同方法。我们还解释了列表中append()、insert()和extend()函数之间的区别。