我有两个清单:
D1=[["a "," "," "," "," "," "],["b "," ","o"," "," "," "],["c ","x"," "," "," "," "],["d "," "," "," "," "," "],["e "," "," "," "," "," "]]
D2=[["a "," ","o"," ","x"," "],
["b "," "," "," "," "," "],["c "," "," "," "," "," "],["d "," "," "," "," "," "],["e "," "," "," "," "," "]]
D=[]
我想列出 D
所以, D[i]=D1[i] + D2[i]
,例如第一个元素(列表)如下所示:
D=[["a "," "," "," "," "," ","a "," ","o"," ","x"," "],...]
请帮帮我,我是python的新手
3 回答
如果您不想改变D1,首先将D1复制到D.然后在python中使用
extend
方法 . 它会将list2的所有元素添加到list1 .这是一个简单的代码:虽然这段代码的时间复杂度是O(n ^ 2),但它可以得到改进 .
从您的遗嘱(
D[i] = D1[i] + D2[i]
)直截了当,最简单的方法是使用理解列表 . Asumminglen(D1) == len(D2)
,:会做的 .
试试这个:
如果长度不同,它将削减其余部分并前进至
D1
,D2
的最小值 . 如果您想要相反,请使用zip_longest
,如下所示:但是如果
D1
和D2
具有相同的长度,两者都将起作用 .