精华内容
下载资源
问答
  • python global 用法

    万次阅读 多人点赞 2018-05-08 10:46:40
    局部变量 当你在函数定义内声明变量的时候,它们与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是 局部 的。.../usr/bin/python # Filename: func_local.py def func(x): print 'x i...

    局部变量

    当你在函数定义内声明变量的时候,它们与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是 局部 的。这称为变量的 作用域 。所有变量的作用域是它们被定义的块,从它们的名称被定义的那点开始。

    使用局部变量

    使用局部变量

    #!/usr/bin/python
    # Filename: func_local.py
    
    def func(x):
        print 'x is', x
        x = 2
        print 'Changed local x to', x
    
    x = 50
    func(x)
    print 'x is still', x

    输出

    $ python func_local.py
    x is 50
    Changed local x to 2
    x is still 50

    它如何工作

    在函数中,我们第一次使用x的 值 的时候,Python使用函数声明的形参的值。

    接下来,我们把值2赋给x。x是函数的局部变量。所以,当我们在函数内改变x的值的时候,在主块中定义的x不受影响。

    在最后一个print语句中,我们证明了主块中的x的值确实没有受到影响。

    使用global语句

    如果你想要为一个定义在函数外的变量赋值,那么你就得告诉Python这个变量名不是局部的,而是 全局 的。我们使用global语句完成这一功能。没有global语句,是不可能为定义在函数外的变量赋值的。

    你可以使用定义在函数外的变量的值(假设在函数内没有同名的变量)。然而,我并不鼓励你这样做,并且你应该尽量避免这样做,因为这使得程序的读者会不清楚这个变量是在哪里定义的。使用global语句可以清楚地表明变量是在外面的块定义的。

    使用global语句

    #!/usr/bin/python
    # Filename: func_global.py
    
    def func():
        global x
    
        print 'x is', x
        x = 2
        print 'Changed local x to', x
    
    x = 50
    func()
    print 'Value of x is', x

    输出

    $ python func_global.py
    x is 50
    Changed global x to 2
    Value of x is 2

    它如何工作

    global语句被用来声明x是全局的——因此,当我们在函数内把值赋给x的时候,这个变化也反映在我们在主块中使用x的值的时候。

    你可以使用同一个global语句指定多个全局变量。例如global x, y, z。

    展开全文
  • global 的主要用法,若想在函数内部使用函数外部的全局变量,则需要使用关键字global,示例: a = 20 def testglobal(): a = 10 print("在函数内给a 重新赋值后打印:",a) if __name__ =="__main__": test...

    global 的主要用法,若想在函数内部使用函数外部的全局变量,则需要使用关键字global,示例:

    a = 20
    
    def testglobal():
        a = 10
        print("在函数内给a 重新赋值后打印:",a)
    
    
    if __name__ =="__main__":
        testglobal()
        print("打印全局变量a:", a)
    

    运行结果:

    在函数内给a 重新赋值后打印: 10
    打印全局变量a: 20
    

    运行结果如图所示,函数内部直接给 a 赋值,并没有修改全局变量的值,而是在定义一个同名的局部变量。若想在函数内部修改全局变量,需要在函数里面声明全局变量,global:

    a = 20
    
    def testglobal():
        global a
        a = 10
        print("在函数内给a 重新赋值后打印:",a)
    
    
    if __name__ =="__main__":
        testglobal()
        print("打印全局变量a:", a)
    

    运行结果:

    在函数内给a 重新赋值后打印: 10
    打印全局变量a: 10
    

    需要注意的是,有些全局变量类型不需要在函数内部申明 global,例如:列表、字典、集合,这些都是可变类型,不可变类型则需要声明,如: int、float、bool、str、元组

    不可变类型:如果改变了该类型的数据的值,地址也发生了变化
    可变类型:如果改变了该类型的数据的值,地址没有发生了变化
    如下代码所示:

    # 定义一个集合
    parameSet = {"value01","value02","value03"}
    
    
    def testGlabal():
        print("修改集合之前的ID:",id(parameSet))
        parameSet.add("value04")
        print(parameSet)
        print("修改集合之后的ID:",id(parameSet))
    
    if __name__ =="__main__":
        testGlabal()
    

    运行结果:结果显示集合的值改变了,但是地址仍旧没有变化

    修改集合之前的ID: 2068161947240
    {'value02', 'value03', 'value01', 'value04'}
    修改集合之后的ID: 2068161947240
    

    不可变类型,以int 为例:

    # 定义一个整数
    a = 10
    print("修改a之前的ID:",id(a))
    a = 20
    print("修改a之后的ID:",id(a))
    

    运行结果:更改a 的值后,a 的地址发生了变化

    修改a之前的ID: 1671654704
    修改a之后的ID: 1671655024
    
    展开全文
  • python global 用法简介

    千次阅读 多人点赞 2019-05-28 22:49:16
    使用 global ,可以让 方法内的 局部变量 全局可用,并且在别的文件里也可以引用到 def fun(): global c c =0 fun() print(c) 打印: 0 2.2 用法2 在局部函数对全局变量重新赋值 a = 0 b = 0 def...

    1、简介

    简单介绍 global 的用法

    2、用法

    2.1、用法一

    使用 global ,可以让 方法内的 局部变量 全局可用,并且在别的文件里也可以引用到

    def fun():
       global c
       c =0
    
    fun()
    print(c)
    
    打印:
    0
    
    2.2 用法2

    在局部函数对全局变量重新赋值

    a = 0
    b = 0
    def fun():
       global a       # 在a  之前添加 global
       a = 2
       b = 2
    
    fun()
    print(a)
    print(b)
    
    打印:
    2
    0
    
    展开全文
  • Python global关键字全局变量用法 def get_info(): list_1 = [1,2,3,4,5] global number number = len(list_1) if __name__ == '__main__': get_info() print("数组的个数为:" + number) >>> 数组...

    Python global关键字全局变量用法

    def get_info():
        list_1 = [1,2,3,4,5]
        global number
        number = len(list_1)
    if __name__ == '__main__':
        get_info()
        print("数组的个数为:" + number)
    
    >>> 数组的个数为:5
    

    global关键字把函数内的局部变量提升为全局变量,这样函数外部也可以调用这个变量。

    注意这边需要先执行get_info()方法。

    展开全文
  • python global用法

    2020-10-26 15:52:56
    在函数内部用global声明一个外部的变量,就可以在函数内使用这个变量;如果在外部将变量声明为global,函数内部还是不能用的。 参考: https://blog.csdn.net/weixin_40894921/article/details/88528159
  • 主要介绍了python global和nonlocal用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 本文实例讲述了pythonglobal用法。分享给大家供大家参考。具体分析如下: 1、global—将变量定义为全局变量。可以通过定义为全局变量,实现在函数内部改变变量值。 2、一个global语句可以同时定义多个变量,如 ...
  • Python global全局变量函数详解

    千次阅读 2020-02-11 21:59:32
    本文详解了global全局变量函数的用法,还有global的作用。global全局变量在一个脚本中全部作用域都可以访问,用法很方便,希望本文对大家有所帮助 global语句的作用 在编写程序的时候,如果想为一个在函数外的变量...
  • pythonglobal用法

    万次阅读 多人点赞 2019-03-13 11:08:33
    Python中定义函数时,若想在函数内部对函数外的变量进行操作,就需要在函数内部声明其为global。 例子1 x = 1 def func(): x = 2 func() print(x) 输出:1 在func函数中并未在x前面加global,所以func函数无法将...
  • 主要介绍了python global关键字的用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • python global用法和nonlocal关键字 global 和 nonlocal关键字 当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字了。 局部作用域内变量想修改闭包函数外的变量用:nonlocal 闭包函数外的函数...
  • Pythonglobal用法详解

    万次阅读 多人点赞 2014-04-11 01:17:43
     在python3.3.2的官方api帮助文档上看到, 如下一段话: The global statement is a declaration which holds for the entire current code block. It means that the listed identifiers are to be interpreted ...
  • pythonglobal变量一种用法

    千次阅读 2019-04-05 23:46:27
    在用itchat的时候,全局变量引用不到,需要用global关键字指明变量是全局的 name = "outter" def hello(): # global name name = "inner" print('hello', name) if __name__ == "__main__": hello() ...
  • Pythonglobal用法

    万次阅读 2018-07-28 17:09:30
    Pythonglobal用法   废话不说,直接看代码 代码1 # coding: utf-8 age = 18 def happy_birthday(): print "age {}, happy birthday ~".format(age) happy_birthday() print "your ...
  • global 标志实际上是为了提示 python 解释器,表明被其修饰的变量是全局变量。这样解释器就可以从当前空间 (current scope) 中读写相应变量了。 Python 的全局变量是模块 (module) 级别的 每个 python 函数拥有...
  • python Global和Return用法

    千次阅读 2017-10-16 12:23:12
    1.Global和Return 你也许遇到过, python中一些函数在最尾部有一个return关键字。你知道它是干嘛吗?它和其他语言的return类似。我们来检查下这个小函数: def add(value1, value2): return value1 + value2 ...
  • python_global用法

    2019-01-13 08:53:49
    Python 中,一个变量的作用域总是由在代码中被赋值的地方所决定的。... 当在函数中使用未认证的变量名时,Python搜索4个作用域[本地作用域(L)(函数内部声明但没有使用global的变量),之后是上一层结构中def或者la...
  • pythonglobal用法

    2020-04-01 16:11:39
    pythonglobal用法 觉得有用的话,欢迎一起讨论相互学习~Follow Me Python中定义函数时,若想在函数内部对函数外的变量进行操作,就需要在函数内部声明其为global。 例子1 x = 1 def func(): x = 2 func() print(x...
  • 2、global用法 1、glob用法 query_imgs_path += glob.glob(os.path.join(QUERY_PATH, id, '*.jpg')) 这样就可以获取,这个目录下 os.path.join(QUERY_PATH, id),所有以.jpg存储的图片的地址,这些地址存在query...
  • Python - global类型与globals()方法

    千次阅读 2019-08-06 00:05:14
    #global类型在函数内部使用,标注变量来自外部 #如果外部不存在则新建一个外部global变量,只要运行到global变量便会替换外部存在的同名变量 def demo(): global a a = 20 print(a) a = 30 if __name__ == '_...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,561
精华内容 35,424
关键字:

pythonglobal用法

python 订阅