gpt4 book ai didi

python - 在 Python 函数内添加变量

转载 作者:太空宇宙 更新时间:2023-11-03 18:45:12 24 4
gpt4 key购买 nike

我有一个变量a,我想将a与b相加,如下所示:

a = a + b

现在,我的程序设置如下:

a = 2
b = 3

def add() :
a = a + b
print(str(a))

add()

每次我运行这个,我都会得到

Traceback (most recent call last):
File "<stdin>", line 8, in <module>
File "<stdin>", line 5, in add
UnboundLocalError: local variable 'a' referenced before assignment

而不是

5

请解释我犯的明显错误。

最佳答案

这是因为一个叫做scope的东西。您可以阅读相关内容,但本质上这意味着在函数内部,您可能无法访问外部定义的内容。

要让函数知道这些变量,您需要将它们传入。试试这个:

a = 2
b = 3

def add(x, y) :
x = x + y
print(str(x))

add(a, b)

值得注意的是,这些值被传递到函数中,但实际上它们本身并未被修改。我不会进入complexities surrounding the way variables are passed to functions ,但只要说在此处调用 add(a, b) 后,a 和 b 的值仍然分别为 2 和 3。

关于python - 在 Python 函数内添加变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19696917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com