千家信息网

python作用域怎么用

发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,小编给大家分享一下python作用域怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!作用域变量的作用域决定了在哪一部分
千家信息网最后更新 2025年11月11日python作用域怎么用

小编给大家分享一下python作用域怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

作用域

变量的作用域决定了在哪一部分程序可以访问哪个特定的变量名称。Python的作用域一共有4种,分别是:

  • L (Local) 局部作用域

  • E (Enclosing) 闭包函数外的函数中

  • G (Global) 全局作用域

  • B (Built-in) 内建作用域

以 L -> E -> G ->B 的规则查找,即:在局部找不到,便会去局部外的局部找(例如闭包),再找不到就会去全局找,再者去内建中找。

x = int(2.9)  # 内建作用域 g_count = 0  # 全局作用域def outer():    o_count = 1  # 闭包函数外的函数中    def inner():        i_count = 2  # 局部作用域

Python 中只有模块(module),类(class)以及函数(def、lambda)才会引入新的作用域,其它的代码块(如 if/elif/else/、try/except、for/while等)是不会引入新的作用域的,也就是说这这些语句内定义的变量,外部也可以访问

  • 全局变量和局部变量

    • 定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

    • 局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到作用域中。

  • global 和 nonlocal关键字

    当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字了。

    • global

      num = 1def fun1():    global num  # 需要使用 global 关键字声明    print(num)    num = 123    print(num)fun1() 以上实例输出结果:1123
    • nonlocal

      如果要修改嵌套作用域(enclosing 作用域,外层非全局作用域)中的变量则需要 nonlocal 关键字了。

      def outer():    num = 10    def inner():        nonlocal num  # nonlocal关键字声明        num = 100        print(num)    inner()    print(num)outer() 以上实例输出结果:100100

以上是"python作用域怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

作用 变量 函数 局部 全局 关键 关键字 篇文章 闭包 内容 名称 实例 程序 结果 输出 不怎么 也就是 也就是说 代码 只有 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 sql数据库书籍哪个比较好 机房温度达到多少度服务器会重启 淄博联想服务器代理怎么收费 dell 服务器硬盘灯 广州大学华软网络技术系 佛山erp软件开发公司 邹总说软件开发 网络安全性龙头股 张家港品牌网络技术参考价格 广东恒山系列鲲鹏服务器批发厂家 武汉众思互联网络技术有限公司 教育系统网络安全会新闻稿 山东驾驶人网络安全教育网 华为云数据库密码有效期 联想软件开发笔试 java的登录链接数据库 网络安全等级制度发展趋势 网络安全靠人民手抄报一年级 数据库管理及编程 php连接数据库查询 服务器戴尔里面有飞蛾 香肠派对服务器错误是怎么回事 网络安全视频会议 王军 网络安全的主要属性 文明6租游戏服务器 河南放心软件开发设施厂家现货 西安计票系统服务器出租 元知网络技术有限公司怎么样 团队官网_专注网络安全 w10局域网服务器
0