如果有一列表如下:
list1=[["a1","a2"],["b1","b2"],["c1","c2"],["d1","d2"]]要展开外层列表,得到一个字符串列表形如:
['a1', 'a2', 'b1', 'b2', 'c1', 'c2', 'd1', 'd2']该怎么操作才最简单?
常规方法如下:
>>> a = [] >>> for c in list1: a.append(c[0]) a.append(c[1]) >>> a ['a1', 'a2', 'b1', 'b2', 'c1', 'c2', 'd1', 'd2']
当然,也可以使用reduce函数
reduce(lambda x,y:x+y,list1) ['a1', 'a2', 'b1', 'b2', 'c1', 'c2', 'd1', 'd2']
有没有更简单的做法?可以使用带初始值的sum()函数,利用列表加法等于append()操作来简化:
>>> list1=[["a1","a2"],["b1","b2"],["c1","c2"],["d1","d2"]] >>> sum(list1,[]) ['a1', 'a2', 'b1', 'b2', 'c1', 'c2', 'd1', 'd2']
No comments :
Post a Comment