我想获取嵌套列表中所有元素的计数。nested_lst = [[('NOUN', 'shoe'), ('NOUN', 'shirt'), ('NOUN', 'jacket')], [('VERB', 'jump')], [('NOUN', 'shoe'), ('NOUN', 'shirt'), ('ADJ', 'fancy')]]
我的预期结果是:
{'NOUN': 5, 'shoe': 2, 'shirt':2, 'VERB': 1, 'jump': 1, 'jacket': 1, 'ADJ': 1, 'fancy':1}
我当前的代码:
Counter(itertools.chain(*nested_lst))
产生了元组的数量,而不是每个元素的数量。 最佳答案
两次应用链摆脱内元组
from itertools import chain
from collections import Counter
Counter(chain(*chain(*nested_lst)))
要么
Counter(chain.from_iterable(chain.from_iterable(nested_lst)))
输出:
Counter({'ADJ': 1,
'NOUN': 5,
'VERB': 1,
'fancy': 1,
'jacket': 1,
'jump': 1,
'shirt': 2,
'shoe': 2})
关于python - 计算嵌套列表中的所有元组元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53178033/