千家信息网

Python函数命名空间和作用域是什么

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍Python函数命名空间和作用域是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.Local作用域a = 100def func5(): b = 5
千家信息网最后更新 2026年11月02日Python函数命名空间和作用域是什么

这篇文章主要介绍Python函数命名空间和作用域是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1.Local作用域

a = 100def func5():    b = 50    a = 99    print('函数内a', a)    print('函数内b', b)print('函数外a', a)func5()print('函数外b', b)

返回结果:

函数外a 100
函数内a 99
函数内b 50
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/python知识总结/2.python自学网-通用模块-视频源码/test.py", line 12, in
print('函数外b', b)
NameError: name 'b' is not defined

上面函数中定义b变量,所以外面无法输出。

2.Enclosing function locals作用域

a = 100def func5():    b = 50    print('函数内a', a)    print('函数内b', b)    def func6():        print('下层函数内a', a)        print('下层函数内b', b)    func6()func5()

返回结果:

函数内a 100
函数内b 50
下层函数内a 100
下层函数内b 50

3.Global全局变量

a = 123def func():    a = 100    print(a)print(a)func()print(a)a = 123def func():    global a  # 这里不能使用nonlocal    a = 100    print(a)    print(locals())  # 查看局部变量    print(globals())  # 查看全局变量print(a)func()print(a)

4.非局部变量nonlocal

def func5():    b = 50    print(b)    def func6():        nonlocal b  # 非局部的,只适用于闭包内部        b = 60        print(b)    func6()    print(b)func5()

5.就近原则

b = 1111def func5():    b = 50    print(b)    def func6():        b = 60        print(b)  # 这里的b从内到外究竟查找    func6()    print(b)func5()a = 100def func5():    b = 50    print(a)    print(b)    def func6():        b = 60        print(b)        print(a)func5()

6.函数执行顺序

a = 123def func1():    print(a)    print(b)func1()  # 不能打印bb = 456func1()  # 可以打印b

7.循环、判断代码块中作用域问题

if True:    a = 100print(a)for i in range(1, 10):    print(i)print(i)

循环代码块中没有作用域这样的情况。

以上是"Python函数命名空间和作用域是什么"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

函数 作用 变量 局部 空间 代码 全局 内容 知识 篇文章 结果 循环 价值 兴趣 原则 小伙 小伙伴 情况 更多 模块 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技互联网项目 互联网品科技 科技互联网技术 百单互联网科技有限公司 互联网科技视频素材 中国互联网金融科技基金 互联网科技创新企业排名 华中科技有哪些互联网大佬 广州优美互联网科技 互联网之后的科技是什么 重庆威客帮互联网科技 受益于互联网科技的高速发展 广西互联网科技孵化中心 乌苏新华互联网科技做什么的 山东星卡互联网科技有限公司官网 每天都有哪些好的互联网科技 半导体行业属于互联网高科技类吗 互联网时代科技型公司的机会 互联网科技博主张洲 东风日产互联网科技公司叫什么 厦门中拓互联网络科技有限公司 互联网科技的发展 狮子座互联网科技 华中科技有哪些互联网大佬 互联网科技教育视频 上海宁丞科技互联网 明优互联网科技有限公司 美国互联网科技公司 九思连强互联网电子科技有限公司 恒生互联网科技趋势
0