擅长:python、mysql、java
<p>当你在字典上迭代时,实际上是在它的键上迭代:</p>
<pre><code>>>> for a in {'b': 2, 'c': 3}:
... print a
...
c
b
</code></pre>
<p>您的代码运行(但无法正常工作),因为<code>for k, v in state_sentiment</code>实际上将每个密钥名称拆分为单独的字符:</p>
^{pr2}$
<p>相反,您要做的是迭代键值项对</em>:</p>
<pre><code>for k, v in state_sentiment.items():
...
</code></pre>
<p>也可以跳过循环,使用<code>max()</code>执行此操作:</p>
<pre><code>def key_func(state):
return sum(state[1]) / float(len(state[1]))
happiest_state = max(state_sentiment.items(), key=key_func)
</code></pre>