擅长:python、mysql、java
<p>它不会像你想的那样工作。<a href="https://stackoverflow.com/questions/575196/in-python-why-can-a-function-modify-some-arguments-as-perceived-by-the-caller">This question</a>正在完整地回答这个问题。简而言之:Python将参数<code>a</code>和<code>b</code>转换为两个变量,这两个变量只在<code>vegas</code>中可见。它们是由<code>a</code>和<code>b</code>的值启动的,但与外部<code>a</code>和<code>b</code>变量没有关系。你知道吗</p>
<p>要使代码正常工作,请执行以下操作:</p>
<pre><code>def vegas(a,b):
temp = a
a = b
b = temp
return a,b
a = 6
b = 9
print(a,b)
a,b = vegas(a,b)
print(a,b)
</code></pre>
<p>另外,您可能有兴趣知道可以用<code>a,b = b,a</code>交换两个值</p>