Python 用另一个列表的某些值追加列表
我有一个列表Python 用另一个列表的某些值追加列表,python,list,append,Python,List,Append,我有一个列表mainList。我想在这个列表后面附加一个子列表,但只添加第2、第3、第4、第5和第7项 for subList in file: mainList.append(subList[#items 2,3,4,5,7]) 除此之外还有什么办法吗 for subList in file: temp = [] for item in subList[1:]: if #item not the 6th item: temp.a
mainList
。我想在这个列表后面附加一个子列表
,但只添加第2、第3、第4、第5和第7项
for subList in file:
mainList.append(subList[#items 2,3,4,5,7])
除此之外还有什么办法吗
for subList in file:
temp = []
for item in subList[1:]:
if #item not the 6th item:
temp.append(item)
mainList.append(temp)
我可以在没有
temp
列表和嵌套for循环附加此列表的情况下执行此操作吗?您可以使用操作符.itemegetter
从子列表中获取项,返回元组。在追加之前,您可以随后强制转换到列表:
from operator import itemgetter
f = itemgetter(2,3,4,5,7)
for subList in file:
mainList.append(list(f(subList)))
如果子列表也可以作为元组传递,则可以删除列表调用。这应该可以:
mainList.extend(subList[1:6])
mainList.append(subList[7])
我会像这样做,简单,有一个列表理解:
indices = 2,3,4,5,7
mainList.append([sublist[i] for i in indices])