擅长:python、mysql、java
<p>您可以将<code>collections.defaultdict</code>与<code>int</code>一起用作<code>default_factory</code>。<br/>
并将<code>all_counts[pairs] = count</code>更改为<code>all_counts[pairs] += count</code></p>
<pre class="lang-py prettyprint-override"><code>from collections import defaultdict
dinucleotides = ['AA','AT','AG','AC',
'TA','TT','TG','TC',
'GA','GT','GG','GC',
'CA','CT','CG','CT']
all_counts = defaultdict(int)
with open('short.fasta', 'r') as dna_file:
dna_file.readline()
for line in dna_file:
my_line = line.strip()
for pairs in dinucleotides:
count = my_line.count(pairs)
all_counts[pairs] += count
</code></pre>
<p>或者,使用<code>dict.setdefault</code>方法</p>
<pre class="lang-py prettyprint-override"><code>...
all_counts = {}
...
all_counts.setdefault(pairs, 0) += count
</code></pre>