Python作用域(局部 全局)及global关键字使用详解

 更新时间:2023年10月29日 08:58:58   作者:小万哥  
这篇文章主要为大家介绍了Python作用域(局部 全局)及global关键字使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

局部作用域

变量只在创建它的区域内可用。这被称为作用域。

在函数内部创建的变量属于该函数的局部作用域,并且只能在该函数内部使用。

示例:在函数内部创建的变量在该函数内部可用:

def myfunc():
  x = 300
  print(x)
myfunc()

函数内部的函数

如上面的示例所解释的那样,变量 x 在函数外部不可用,但可以在函数内部的任何函数中使用:

示例:局部变量可以从函数内部的函数中访问:

def myfunc():
  x = 300
  def myinnerfunc():
    print(x)
  myinnerfunc()
myfunc()

全局作用域

在 Python 代码的主体部分创建的变量是全局变量,属于全局作用域。全局变量可以在任何作用域中使用,包括全局作用域和局部作用域。

示例:在函数外部创建的变量是全局的,并且可以被任何人使用:

x = 300
def myfunc():
  print(x)
myfunc()
print(x)

变量命名

如果在函数内部和外部使用相同的变量名称,Python 将把它们视为两个不同的变量,一个在全局作用域(函数外部)中可用,另一个在局部作用域(函数内部)中可用:

示例:该函数将打印局部变量 x,然后代码将打印全局变量 x:

x = 300
def myfunc():
  x = 200
  print(x)
myfunc()
print(x)

global 关键字

如果需要创建一个全局变量,但又受限于局部作用域,可以使用 global 关键字。global 关键字将变量声明为全局变量。

示例:如果使用 global 关键字,变量将属于全局作用域:

def myfunc():
  global x
  x = 300
myfunc()
print(x)

此外,如果您希望在函数内部更改全局变量的值,也可以使用 global 关键字。

示例:要在函数内部更改全局变量的值,请使用 global 关键字引用该变量:

x = 300
def myfunc():
  global x
  x = 200
myfunc()
print(x)

以上就是Python作用域(局部 全局)及global关键字使用详解的详细内容,更多关于Python作用域global关键字的资料请关注脚本之家其它相关文章!

相关文章

  • 在 Linux/Mac 下为Python函数添加超时时间的方法

    在 Linux/Mac 下为Python函数添加超时时间的方法

    这篇文章主要介绍了在 Linux/Mac 下为Python函数添加超时时间,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • 基于Python实现贪吃蛇小游戏(附源码)

    基于Python实现贪吃蛇小游戏(附源码)

    本次我们将编写一个贪吃蛇的游戏。通过键盘上、下、左、右控制小蛇上、下、左、右移动,吃到食物后长度加1;蛇头碰到自身或窗口边缘,游戏失败,需要的可以参考一下
    2022-11-11
  • 利用Python校准本地时间的方法教程

    利用Python校准本地时间的方法教程

    这篇文章主要给大家介绍了关于如何利用Python校准本地时间的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-10-10
  • Python桌面文件清理脚本分享

    Python桌面文件清理脚本分享

    这篇文章主要介绍了Python桌面文件清理脚本,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • Python和Sublime整合过程图示

    Python和Sublime整合过程图示

    这篇文章主要介绍了Python和Sublime整合过程图示,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Python学习笔记之变量、自定义函数用法示例

    Python学习笔记之变量、自定义函数用法示例

    这篇文章主要介绍了Python学习笔记之变量、自定义函数用法,结合实例形式分析了Python变量、自定义函数的概念、功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-05-05
  • Python中loguru日志库的使用

    Python中loguru日志库的使用

    本文主要介绍了Python中loguru日志库的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • pycharm from lxml import etree标红问题及解决

    pycharm from lxml import etree标红问题及解决

    这篇文章主要介绍了pycharm from lxml import etree标红问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Flask实现swagger在线文档与接口测试流程详解

    Flask实现swagger在线文档与接口测试流程详解

    Flask是一个使用Python编写的轻量级Web应用框架。其WSGI工具箱采用 Werkzeug,模板引擎则使用Jinja2。Flask使用 BSD 授权。Flask也被称为“microframework”,因为它使用简单的核心,用 extension 增加其他功能,本篇带你用Flask实现swagger在线文档与接口测试
    2022-07-07
  • Python Django ORM与模型详解

    Python Django ORM与模型详解

    这篇文章主要介绍了django的ORM与模型的实现原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧v
    2021-11-11

最新评论