给定一个带有子列表的列表,我想提取具有指定长度的子列表。如果子列表的长度小于指定的长度,则全部提取。请参阅下面的说明
在下面的示例中,我正在提取长度 = 2 的子列表。如果长度更大,我将提取子列表中的前两个元素并忽略其余元素。输入
A = [['A',[1,2,3]],['D',[3,4]],['E',[6,7]],['F',[1]],['G',[7,6,5,4]]]
输出
B = [['A',[1,2]],['D',[3,4]],['E',[6,7]],['F',[1]],['G',[7,6]]]
我目前正在做如下,它的工作原理,但想知道是否有一个简单的方法
B=[]
for el in A:
l = []
if len(el[1]) > 2:
l.append(el[0])
l.append(el[1][0:2])
B.append(l)
else:
l.append(el[0])
l.append(el[1][0:2])
B.append(l)
print B