Python|在另一个列表中插入列表
在任何索引处插入数字的问题是一个很常见的问题。但有时我们需要将整个列表插入另一个列表。在处理数据时,机器学习中会出现这类问题。让我们讨论一些可以解决这个问题的方法。
方法 #1:使用insert()
+ 循环
在此方法中,我们使用 insert函数一次插入一个元素 1。这样,我们将所有列表元素添加到其他列表中的指定索引处。
# Python3 code to demonstrate
# to insert one list in another
# using insert() + loop
# initializing lists
test_list = [4, 5, 6, 3, 9]
insert_list = [2, 3]
# initializing position
pos = 2
# printing original list
print ("The original list is : " + str(test_list))
# printing insert list
print ("The list to be inserted is : " + str(insert_list))
# using insert() + loop
# to insert one list in another
for i in range(len(insert_list)):
test_list.insert(i + pos, insert_list[i])
# printing result
print ("The list after insertion is : " + str(test_list))
输出 :
The original list is : [4, 5, 6, 3, 9]
The list to be inserted is : [2, 3]
The list after insertion is : [4, 5, 2, 3, 6, 3, 9]
方法#2:使用列表切片
这是执行此特定任务的最 Pythonic 和优雅的方式。在这个方法中,我们只是在需要添加元素的地方分割列表并分配要插入的列表。
# Python3 code to demonstrate
# to insert one list in another
# using list slicing
# initializing lists
test_list = [4, 5, 6, 3, 9]
insert_list = [2, 3]
# initializing position
pos = 2
# printing original list
print ("The original list is : " + str(test_list))
# printing insert list
print ("The list to be inserted is : " + str(insert_list))
# using list slicing
# to insert one list in another
test_list[pos:pos] = insert_list
# printing result
print ("The list after insertion is : " + str(test_list))
输出 :
The original list is : [4, 5, 6, 3, 9]
The list to be inserted is : [2, 3]
The list after insertion is : [4, 5, 2, 3, 6, 3, 9]