擅长:python、mysql、java
<p>变量valueaddCoins不在函数<code>logic</code>的范围内
参见主题的示例<a href="http://python-textbok.readthedocs.io/en/1.0/Variables_and_Scope.html" rel="nofollow noreferrer">http://python-textbok.readthedocs.io/en/1.0/Variables_and_Scope.html</a></p>
<p>要修改它,必须在函数内部将其声明为<code>global</code>:</p>
<pre><code>def logic(coin_txt, w1, wBag, cWeight, vCoin):
global valueAddedCoins
valueAddedCoins += 1
</code></pre>
<p>但这通常被认为是非常糟糕的做法,因为这样的代码通常很难调试(因为很难找出这些全局变量是在哪里修改的,bug是从哪里来的)</p>
<p>另一种方法是传入并返回修改后的值,如下所示:</p>
<pre><code>def increment_int(valueAddedCoins):
return valueAddedCoins += 1
valueAddedCoins = increment_int(valueAddedCoins)
</code></pre>
<p>这样你就会知道是什么修改了你的变量等</p>