<p>下面是一个带有<code>collections.Counter</code>的解决方案:</p>
<pre><code>>>> from collections import Counter
>>> data = [['SOME TEXT', 'COMMON_NAME1', None, 'CHOC', 'MYFR01'],
... ['SOME TEXT2', 'COMMON_NAME1', None, 'ABC', 'MYFR02'],
... ['SOME TEXT3', 'COMMON_NAME1', None, 'XYZ', 'MYFR03'],
... ['SOME TEXT4', 'COMMON_NAME2', None, 'XYZ', 'STRAWBERRY'],
... ['SOME TEXT5', 'COMMON_NAME2', None, 'XYZ', 'MYFR01'],
... ['SOME TEXT6', 'COMMON_NAME2', None, 'XYZ', 'MYFR02'],
... ['SOME TEXT7', 'COMMON_NAME2', None, 'XYZ', 'APPLE']]
>>> c = Counter(i[1] for i in data if i[-1].startswith('MYFR'))
>>> c
Counter({'COMMON_NAME1': 3, 'COMMON_NAME2': 2})
</code></pre>
<p>这假设您的目标选择总是以<code>MYFR</code>开始。仔细阅读您的问题,您还可以使用:</p>
<pre><code>>>> tgt = {'MYFR01', 'MYFR02', 'MYFR03'}
>>> c = Counter(i[1] for i in data if i[-1] in tgt)
>>> c
Counter({'COMMON_NAME1': 3, 'COMMON_NAME2': 2})
</code></pre>
<p>关于<a href="https://docs.python.org/3.5/library/collections.html#collections.Counter" rel="nofollow noreferrer">^{<cd3>}</a>(一个<code>dict</code>的子类)的好处是它可以接受一个<a href="https://www.python.org/dev/peps/pep-0289/" rel="nofollow noreferrer">generator expression</a>。这意味着您不需要将“过滤”项具体化为一些中间数据结构,例如列表</p>