擅长:python、mysql、java
<p>在函数中定义全局变量只是告诉该函数使用指定的同名<code>global</code>变量。它本身不分配变量。如果您使用的是Python3,那么可以在<code>shop</code>函数的嵌入函数中使用声明<code>nonlocal</code>而不是<code>global</code>,来告诉嵌入函数使用<code>shop</code>的本地函数。你知道吗</p>
<p>我看到您希望使用<code>singleplayergame</code>函数中的变量,因此请考虑在所有函数之外定义这些变量,然后通过<code>global</code>声明导入它们。你知道吗</p>
<p>在这种情况下,将<code>normal</code>、<code>fire</code>和<code>laser</code>变量移到<code>shop</code>函数之外就可以了。你知道吗</p>
<p>这里有一些链接可以帮助您在Python中使用scope。你知道吗</p>
<p><a href="https://www.embrangler.com/2011/01/python-scoping-understading-legb/" rel="nofollow noreferrer">Python scoping: understanding LEGB</a></p>
<p><a href="http://effbot.org/pyfaq/how-do-you-set-a-global-variable-in-a-function.htm" rel="nofollow noreferrer">Setting a global variable in a function</a></p>