Python中如何将子列表添加到大列表?extend方法参数报错求解
解决方法:将多个列表作为子列表添加到目标列表
嘿,这问题挺常见的,我来给你捋清楚怎么解决~
首先得搞明白为啥whole_list.extend(x,y)会报错:extend()方法确实只接受一个可迭代参数,它的作用是把这个参数里的每个元素逐个添加到目标列表里,而不是直接接收多个列表参数。
下面给你几种有效的实现方式:
方法1:用append()逐个添加
append()方法会把传入的整个对象作为单个元素添加到列表末尾,正好符合你要把x、y作为子列表加入的需求:
whole_list = [] x = [1,2,3] y = [4,5,6] whole_list.append(x) whole_list.append(y) print(whole_list) # 输出: [[1,2,3],[4,5,6]]
方法2:用extend()配合嵌套列表
如果你想用extend(),可以把x和y先放进一个临时列表里,再把这个临时列表传给extend()——这样extend()会把临时列表里的每个元素(也就是x和y)添加到whole_list中:
whole_list = [] x = [1,2,3] y = [4,5,6] whole_list.extend([x, y]) print(whole_list) # 输出: [[1,2,3],[4,5,6]]
方法3:直接初始化目标列表
如果whole_list一开始就是空的,直接用x和y初始化它是最简洁的方式:
x = [1,2,3] y = [4,5,6] whole_list = [x, y] print(whole_list) # 输出: [[1,2,3],[4,5,6]]
这几种方法都能达到你想要的效果,你可以根据自己的代码场景选最合适的~
内容的提问来源于stack exchange,提问作者Criti von Kevin




