zoukankan      html  css  js  c++  java
  • python——全局变量&局部变量

    >>> count = 5
    >>> def function():
        count = 10
        print(10)
    
        
    >>> function()
    10
    >>> count
    5
    >>> def function2():
        global count
        count = 10
        print(10)
    
        
    >>> function2()
    10
    >>> count
    10

     >>> count = 4
     >>> def func():
         count = count * 10
         print(count)

     >>> func()
     Traceback (most recent call last):
     File "<pyshell#20>", line 1, in <module>
     func()
     File "<pyshell#18>", line 2, in func
     count = count * 10
     UnboundLocalError: local variable 'count' referenced before assignment

      如上述程序所示:定义的function()函数中试图修改全局变量count的值,使其变为10,这时python会使用屏蔽的方法,函数中定义的变量仅是一个局部变量,影响不到全局变量的值。

      但是,如果非要在函数中修改全局变量的值,可使用关键字global,global关键字声明的变量就是全局变量了,如上述定义的函数function2()中,使用了global关键字,全局变量count的值也改变了。

           最后一种情况,如果在定义函数中的变量在定义的函数中没有声明,即使这个变量是全局变量,也会被认定为在引用之前没有声明。

  • 相关阅读:
    Ajax跨域解决实例
    关于tween.js测试介绍
    signal() 和 sigaction()
    信号概述
    监控文件事件
    栈和栈帧
    进程结构和内存布局
    关于文件I/o的原子操作
    查询Linux系统中glibc的版本
    IOPS和Throughput
  • 原文地址:https://www.cnblogs.com/carlber/p/9393910.html
Copyright © 2011-2022 走看看