前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python基础之函数global和nonlocal关键字

python基础之函数global和nonlocal关键字

作者头像
jiankang666
发布2022-12-05 13:32:45
2350
发布2022-12-05 13:32:45
举报
文章被收录于专栏:java基础笔记

博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。


一、背景

  实际开发过程中,经常会遇到很多完全相同或者非常相似的操作,这时,可以将实现类似操作的代码封装为函数,然后在需要的地方调用该函数。这样不仅可以实现代码的复用,还可以使代码更有条理性,增加代码的可靠性。下面我们来介绍一下python的函数global和nonlocal关键字相关内容。


二、global和nonlocal关键字

  当内部作用域想要使用外部作用域的变量时,可使用global和nonlocal关键字。

1.global关键字

  在函数内部修改一个定义在函数外的变量时,须使用global关键字明确声明变量。在函数内部通过global关键字来声明或定义全局变量,可分为两种情况: (1)一个变量已在函数外定义,如果在函数内需要使用该变量的值或修改该变量的值,并将修改结果反映到函数外,可以在函数内用关键字global明确声明该全局变量。 (2)在函数内部直接使用global关键字将一个变量声明为全局变量,如果在函数外没有定义该全局变量,在调用该函数后,会创建新的全局变量。

  例:分析以下程序的运行结果。

代码语言:javascript
复制
num = 
def fun():
    global num            #使用global关键字声明变量为全局变量
    num += 
    print('函数内num的值为',num)
fun()
print('函数外num的值为',num)

  结果如下。

在这里插入图片描述

2.nonlocal关键字

  如果要在一个嵌套的函数中修改嵌套作用域中的变量,则须使用nonlocal关键字。

  例:分析以下程序的运行结果。

代码语言:javascript
复制
def outer():
    num = 
    def inner():
        nonlocal num            #nonlocal关键字声明
        num = 
        print(' inner函数中num的值为',num)
    inner()
    print(' outer函数中num的值为',num)
outer()

  结果如下。

在这里插入图片描述


三、参考

1、廖雪峰的官网 2、python官网 3、Python编程案例教程


四、总结

  以上就是就是关于Python的函数global和nonlocal关键字相关知识,可以参考一下,觉得不错的话,欢迎点赞、收藏、在看,欢迎微信搜索关注java基础笔记,后面会不断更新相关知识,大家一起进步。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java基础笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、背景
  • 二、global和nonlocal关键字
    • 1.global关键字
      • 2.nonlocal关键字
      • 三、参考
      • 四、总结
      相关产品与服务
      云开发 CloudBase
      云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档