我有一份清单,清单如下:
[['A001', 'atendimento', 'sust', 'concessionário', 'adv', 'bom', 'adj', '', ''],
['A001', 'falar', 'verb', 'ter', 'verb', 'nada', 'pron', 'carro', 'sust', '', ''],
['A001', 'não', 'adv', 'perguntar', 'verb', 'problema', 'sust', 'carro', 'sust', '', ''],
['A001', 'não', 'adv', 'oferecer', 'verb', 'ligar', 'verb', 'compra', 'sust', '', ''],
['A001', 'não', 'adv', 'oferecer', 'verb', 'serviço', 'sust', 'compra', 'sust', '', '']]
我想从每个列表中删除空元素,得到一个新的列表列表列表,而不包含空元素:
^{pr2}$我怎么能做到这一点?在
我试过了:
str_list = filter(None, list_of_lists)
您可以使用
join
输出
^{pr2}$您的尝试将从列表中删除空列表,而不是从子列表中删除空元素。而是将过滤器应用于子列表:
对
filter()
的调用用list()
包装,以防稍后在python3中尝试,因为filter()
在py3中返回一个迭代器。在请注意,由于您将其标记为csv,您可能必须小心,因为筛选可能会产生长度不同的行,并且在错误的列中显示项。如果知道每行的最后两项始终为空,则可以将它们切分:
^{pr2}$相关问题 更多 >
编程相关推荐