欢迎访问宙启技术站
智能推送

Python函数编程入门指南:本地与全局变量的解释

发布时间:2023-06-12 08:47:02

在 Python 中,变量可以被定义成为局部变量或全局变量。本地变量通常仅在函数内部可用,而全局变量则在整个脚本中都可用。

本地变量

本地变量是在函数内部定义的变量。它们只能在函数内部使用,因为它们只在函数的局部作用域内定义。这意味着,如果尝试在函数之外使用本地变量,则会抛出 NameError 异常。

让我们看一个简单的例子:

def example():
    x = 5
    print(x)

example()

在这个例子中,变量 x 是一个本地变量。当我们调用 example() 函数时,该函数会打印 x 的值。

现在,如果我们在函数之外尝试使用 x,就会遇到一个错误:

def example():
    x = 5

example()
print(x)  # Raises NameError: name 'x' is not defined

以上代码会在输出 5 后触发 NameError 异常,因为变量 x 是一个本地变量,只能在函数内部使用。

全局变量

与本地变量不同,全局变量可以在程序的任何地方使用。全局变量被定义在函数之外,并且函数可以访问和修改它们。如果在函数中尝试修改全局变量,则必须使用Python关键字 global 声明它:

x = 5

def example():
    global x
    x = x + 1
    print(x)

example()
print(x)

在上面的代码中,我们定义了全局变量 x 并将其设置为 5。然后,我们定义了一个函数 example(),该函数使用关键字 global 重新声明全局变量 x,并将其增加了1。最后,我们打印了 x 的值。

该程序将会输出 66,因为我们在函数中修改了全局变量,并且该值在函数之外也已经被更新了。

需要注意的是,变量的名称对于本地变量和全局变量不能重复。如果变量名称同时在全局和本地定义,那么本地变量的值将覆盖全局变量的值。

这是 Python 中本地和全局变量的一些基本概念。当您在编写程序时,了解这些概念将使您更好地利用 Python 的强大功能。