Python - 联接列表



Python 中的联接列表

Python 中的联接列表是指将多个列表的元素合并为一个列表。这可以使用各种方法来实现,例如连接、列表推导或使用内置函数(如 extend() 或 + 运算符)。

联接列表不会修改原始列表,但会创建一个包含组合元素的新列表。

使用串联运算符联接列表

Python 中的串联运算符(用 + 表示)用于将两个序列(例如字符串、列表或元组)联接到一个序列中。当应用于列表时,串联运算符将联接两个(或多个)列表的元素,以创建一个包含两个列表中所有元素的新列表。

我们只需使用 + 符号来连接列表,即可使用连接运算符加入列表。

在下面的示例中,我们将两个列表 “L1” 和 “L2” 的元素连接起来,创建一个包含两个列表中所有元素的新列表 “joined_list” -


# Two lists to be joined
L1 = [10,20,30,40]
L2 = ['one', 'two', 'three', 'four']
# Joining the lists
joined_list = L1 + L2

# Printing the joined list
print("Joined List:", joined_list)

以下是上述代码的输出 -

Joined List: [10, 20, 30, 40, 'one', 'two', 'three', 'four']

使用列表推导式连接列表

列表推导式是在 Python 中创建列表的一种简洁方法。它用于通过将表达式应用于现有可迭代对象中的每个项目(例如列表、元组或范围)来生成新列表。列表推导式的语法是 −


 new_list = [expression for item in iterable]

这将创建一个新列表,其中为 iterable 中的每个项目计算 expression

我们可以通过迭代多个列表并将其元素附加到新列表来使用 list comprehension 来连接列表。

在此示例中,我们使用列表推导式将两个列表 L1 和 L2 联接为一个列表。结果列表 joined_list 包含 L1 和 L2 中的所有元素 -


# Two lists to be joined
L1 = [36, 24, 3]
L2 = [84, 5, 81]
# Joining the lists using list comprehension
joined_list = [item for sublist in [L1, L2] for item in sublist]
# Printing the joined list
print("Joined List:", joined_list)

上述代码的输出如下 -

Joined List: [36, 24, 3, 84, 5, 81]

使用 append() 函数连接列表

Python 中的 append() 函数用于将单个元素添加到列表的末尾。此函数通过将元素添加到列表末尾来修改原始列表。

我们可以使用 append() 函数通过迭代一个列表的元素并将每个元素附加到另一个列表来联接列表。

在下面的示例中,我们使用 append() 函数将 “list2” 中的元素附加到 “list1” 中。我们通过迭代 “list2” 并将每个元素添加到 “list1” 来实现这一点 -


# List to which elements will be appended
list1 = ['Fruit', 'Number', 'Animal']
# List from which elements will be appended
list2 = ['Apple', 5, 'Dog']
# Joining the lists using the append() function
for element in list2:
	 	 list1.append(element)
# Printing the joined list
print("Joined List:", list1)

我们得到的输出如下所示 -

Joined List: ['Fruit', 'Number', 'Animal', 'Apple', 5, 'Dog']

使用 extend() 函数联接列表

Python extend() 函数用于将可迭代对象(例如另一个列表)中的元素附加到列表的末尾。此函数就地修改原始列表,将可迭代对象的元素添加到列表的末尾。

我们可以使用 extend() 函数加入一个列表,方法是在一个列表上调用它并将另一个列表(或任何可迭代对象)作为参数传递。这会将第二个列表中的所有元素附加到第一个列表的末尾。

在下面的示例中,我们通过使用 extend() 函数附加 “list2” 的元素来扩展 “list1” -


# List to be extended
list1 = [10, 15, 20]
# List to be added
list2 = [25, 30, 35]
# Joining the lists using the extend() function
list1.extend(list2)
# Printing the extended list
print("Extended List:", list1)

获得的输出如下所示 -

Extended List: [10, 15, 20, 25, 30, 35]