更新时间:2024-01-17 来源:黑马程序员 浏览量:

在Python中,变量的作用域是指变量在程序中的可访问范围。Python中主要有以下几种变量作用域:
在函数内部定义的变量具有局部作用域,即只在函数内部可见。一旦函数执行结束,局部变量就会被销毁。
当函数嵌套时,内部函数可以访问外部函数的变量,但外部函数不能访问内部函数的变量。内部函数中的变量既可以是局部变量,也可以是外部函数的变量。
在模块(文件)级别定义的变量具有全局作用域,可以在整个模块内访问。全局变量在整个程序执行周期内都是可见的。
这是最广泛的作用域,包含了Python内置的函数和对象的命名空间。例如,print()、len()等函数就属于内置作用域。
  接下来我们看一段示例代码来说明Python中变量作用域:
# 全局作用域
global_variable = 10
def example_function():
    # 局部作用域
    local_variable = 5
    print("Inside the function:", local_variable)
    def nested_function():
        # 嵌套作用域
        nested_variable = 8
        print("Inside the nested function:", nested_variable)
        # 在嵌套函数中访问外部函数的变量
        print("Accessing variable from outer function:", local_variable)
    nested_function()
# 在函数外部访问全局变量
print("Outside the function:", global_variable)
# 尝试在函数外部访问局部变量,会引发错误
# print("Trying to access local variable outside the function:", local_variable)
example_function()
# 尝试在全局作用域中访问局部变量,会引发错误
# print("Trying to access local variable in global scope:", local_variable)在这个例子中,global_variable是一个全局变量,可以在函数内外访问。local_variable是一个局部变量,只能在example_function函数内部访问。nested_variable是一个嵌套变量,只能在nested_function内部访问。
1024首播|39岁程序员逆袭记:不被年龄定义,AI浪潮里再迎春天
2025-10-241024程序员节丨10年同行,致敬用代码改变世界的你
2025-10-24【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19