擅长:python、mysql、java
<p><code>random.choice</code>是一个方法,因此如果要调用它,需要使用<code>()</code>而不是<code>[]</code>。要访问列表中的元素,还需要使用<code>[]</code>而不是<code>()</code>。你知道吗</p>
<p>对于您的情况,用满足您需要的<code>return random.choice(herb_dict)</code>替换<code>return random.choice[herb_dict("")]</code>,它将在<code>herb_dict</code>中随机返回一个元素。你知道吗</p>
<p>但我认为你的方法的逻辑有问题。你知道吗</p>
<pre><code>print "You find some %s." % herb.name
player.hasHerb()
</code></pre>
<p>以上两条语句永远不会执行。你知道吗</p>
<p>你也可以用<code>if random.choice([0, 1]):</code>代替<code>if random.randint(0,1) == 1:</code>。你知道吗</p>