有函数如下,如果a = 1, b = 2,然后调用func(a,b),在函数外a,b的值依然为1,2 def func(a, b): a, b = 3, 4
时间: 2024-01-23 22:02:54 浏览: 119
这是因为函数中的a和b是局部变量,其作用域仅限于函数内部,对它们的修改不会影响到函数外部的a和b变量。如果想要修改函数外的a和b变量,可以将它们定义为全局变量,或者将函数的返回值赋值给a和b。例如:
1. 将a和b定义为全局变量:
```
a = 1
b = 2
def func():
global a, b
a, b = 3, 4
func()
print(a, b) # 输出结果为 3 4
```
2. 将函数的返回值赋值给a和b:
```
a = 1
b = 2
def func(a, b):
a, b = 3, 4
return a, b
a, b = func(a, b)
print(a, b) # 输出结果为 3 4
```
阅读全文