擅长:python、mysql、java
<p>你需要做的就是从一个文件中读取每一行,按标签将其拆分,为每一行抓取第12列并将其放入一个列表中。(如果您不关心重复行,只需生成<code>column_12 = set()</code>,并使用<code>add(item)</code>而不是<code>append(item)</code>)。然后您只需使用len()来获取集合的长度。或者如果你想要两者,你可以使用一个列表,然后把它改成一个集合。你知道吗</p>
<p>编辑:数一数每一个类别(感谢汤姆·莫里斯提醒我,我实际上没有回答这个问题)。您迭代列12的集合,以便不超过一次计数,并使用<code>count()</code>方法中构建的列表。你知道吗</p>
<pre><code>with open(infile, 'r') as fob:
column_12 = []
for line in fob:
column_12.append(line.split('\t')[11])
print 'Unique lines in column 12 %d' % len(set(column_12))
print 'All lines in column 12 %d' % len(column_12)
print 'Count per catagory:'
for cat in set(column_12):
print '%s - %d' % (cat, column_12.count(cat))
</code></pre>