擅长:python、mysql、java
<p>如评论中所述,缩进已关闭。但是,我知道您现在已经解决了这个问题,但是您得到了一个错误,即在赋值之前引用了<code>printBonus</code></p>
<p>问题在于:</p>
<pre><code> printBonus = printBonus(storeAmount, empAmount) #call to print amounts
</code></pre>
<p>这里的问题是您有一个名为<code>printBonus</code>的局部变量和一个名为<code>printBonus</code>的函数。在<code>main</code>函数中,局部变量优先,因此每当函数引用<code>printBonus</code>时,它都会引用局部变量</p>
<p>在上面的一行中,在Python将值赋给<code>printBonus</code>之前,它首先必须弄清楚该值是什么。然而,这似乎是通过“调用”相同的<code>printBonus</code>东西来实现的,这是一个尚未赋值的变量</p>
<p>最简单的解决方法是不将任何局部变量赋给调用<code>printBonus</code>的结果,因为它不<code>return</code>任何内容:</p>
<pre><code> printBonus(storeAmount, empAmount) #call to print amounts
</code></pre>
<p>没有名为<code>printBonus</code>的局部变量意味着在<code>main</code>函数中,<code>printBonus</code>将按预期引用函数<code>printBonus()</code></p>
<p>你还说你“修复了一些<code>elif</code>”。我看不出您做了哪些更改,但是您可能需要检查<code>empBonus</code>函数是否处理<code>salesIncrease</code>小于3的情况</p>