局部变量,就是在函数内部定义的变量

不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响

局部变量的作用,为了临时保存数据需要在函数

在函数外边定义的变量叫做全局变量

全局变量能够在所有的函数中进行访问

如果在函数中修改全局变量,那么就需要使用global进行声明,否则出错

如果全局变量的名字和局部变量的名字相同,那么使用的是局部变量的

  1. 局部变量:

    局部变量,就是在函数内部定义的变量

    不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响

    局部变量的作用,为了临时保存数据需要在函数中定义变量来进行存储,这就是它的作用

    1 def test1():

    2     a=111

    3     print("a=%d"%a)

    4     b=222

    5     print("b=%d"%b)

    6

    7 def test2():

    8     c=333

    9     print("c=%d"%c)

  2.  

    全局变量

    如果一个变量,既能在一个函数中使用,也能在其他的函数中使用,这样的变量就是全局变量

    1 a=200

    2 def test1():

    3     print(a)

    4

    5 def test2():

    6     print(a)

    7

    8 test1()

    9 test2()

  3.  

    全局变量和局部变量名字相同问题

    #定义全局变量

    a=200

    def test1():

    a=300

    print("test1...修改前a=%d"%a)

    a=400

    print("test1...修改后a=%d"%a)

    def test2():

    print("test2....a=%d"%a)

    test1()

    test2()~

  4.  

    修改全局变量

    既然全局变量,就是能够在所以的函数中进行使用,那么可否进行修改呢?

    答案是可以的,我们可以使用global

  5.  

    总结:

    在函数外边定义的变量叫做全局变量

    全局变量能够在所有的函数中进行访问

    如果在函数中修改全局变量,那么就需要使用global进行声明,否则出错

    如果全局变量的名字和局部变量的名字相同,那么使用的是局部变量的

  6.  

    可变类型的全局变量

    ~在函数中不使用global声明全局变量时不能修改全局变量的本质是不能修改全   局变量的指向,即不能将全局变量指向新的数据。

    ~对于不可变类型的全局变量来说,因其指向的数据不能修改,所以不使用glob    al时无法修改全局变量。

    ~对于可变类型的全局变量来说,因其指向的数据可以修改,所以不使用global   时也可修改全局变量

    来源:https://jingyan.baidu.com/article/c35dbcb097a97e8916fcbcdf.html 

python中局部变量和全局变量的更多相关文章

  1. JavaScript中局部变量与全局变量的不同

    JavaScript中局部变量与全局变量 我们知道,JavaScript的变量是松散型的变量,也就是说,其变量只需用var声明,其赋值的类型是不限定的.比如: var person=18; perso ...

  2. [转]深入探讨C语言中局部变量与全局变量的作用域与存储类别

    C语言中局部变量和全局变量变量的作用域与存储类别(auto,static,extern,register) 1.局部变量和全局变量在讨论函数的形参变量时曾经提到,形参变量只在被调用期间才分配内存单元, ...

  3. php中局部变量和全局变量

    php中局部变量和全局变量 代码1:函数内部使用函数外部变量错误方法 <?php $name = 'fish'; function animal() { echo $name; } animal ...

  4. 对js中局部变量、全局变量和闭包的理解

    对js中局部变量.全局变量和闭包的理解 局部变量 对于局部变量,js给出的定义是这样的:在 JavaScript函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它.(该变量的作用域 ...

  5. 对JavaScript中局部变量、全局变量和闭包的理解

    对js中局部变量.全局变量和闭包的理解 局部变量 对于局部变量,js给出的定义是这样的:在 JavaScript函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它.(该变量的作用域 ...

  6. python中list作为全局变量无需global声明的原因

    发现一个问题. python中list变量作为全局变量时,在函数中可以直接修改. 而普通变量则需要先在函数中global声明,否则会报错. 例如: a = 1 def fun(): global a ...

  7. PYTHON 函数局部变量和全局变量

    有这样一段PYTHON代码,从事C语言开发的人都知道,如果定义了全局变量,而函数内没有定义同名的函数变量的话,那么在函数内对该变量的赋值就是对全局变量空间数值的修改, 然后在PYTHON中却不尽相同, ...

  8. python的局部变量,全局变量,类变量,实例变量

    定义: a.全局变量:在模块内.在所有函数外面.在class外面,这就是全局变量. b.局部变量:在函数内.在class的方法内(未加self修饰的),这就是局部变量. c. 静态变量:在class内 ...

  9. 【Python】PYTHON 函数局部变量和全局变量

    有这样一段PYTHON代码,从事C语言开发的人都知道,如果定义了全局变量,而函数内没有定义同名的函数变量的话,那么在函数内对该变量的赋值就是对全局变量空间数值的修改, 然后在PYTHON中却不尽相同, ...

随机推荐

  1. Lambda语句中创建自定义类型时,也可指定某种特定类型,方法是在new与{}之间写上类型名称

    如: var fc =...ChildFath = fc.Select(c => new Child_Father { child = c.child, father = c.father }) ...

  2. 1 响应式页面-@media介绍,

    我们为什么要写自适应的页面(响应式页面) 众所周知,电脑.平板.手机的屏幕是差距很大的,假如在电脑上写好了一个页面,在电脑上看起来不错,但是如果放到手机上的话,那可能就会乱的一塌糊涂,这时候怎么解决呢 ...

  3. PyInstaller打包成exe可执行文件

    PyInstaller 安装pyinstaller 对于那些网络比较稳定,能够流畅使用pip源地址的用户,直接下面的命令就可以搞定: pip install pyinstaller 通常我们会下载源码 ...

  4. springMVC第一天

    这些是springMVC3.2所用到的jar包 web.xml配置 <?xml version="1.0" encoding="UTF-8"?> & ...

  5. git获取网上的项目

    这里是从coding.net上下载项目至本地phpstorm并配置好相关环境. 这里url地址正是项目路径.获取的地方是: 下面那个url直接复制粘贴. 自己选择一个目录,然后clone. 下面便是前 ...

  6. VBox 安装 Ubuntu Server 的那些坑,键盘乱码、网卡互连、共享目录等

    1.更新,相信大家都是有强迫症的 sudo apt-get update sudo apt-get upgrade 出现错误:Could not open lock file /var/lib/dpk ...

  7. 408. Valid Word Abbreviation有效的单词缩写

    [抄题]: Given a non-empty string s and an abbreviation abbr, return whether the string matches with th ...

  8. 17-pow(c++)

    C++中有封装的pow()可以直接调用,头文件math,同时对函数进行了重载,支持多种参数格式: double pow (double base , double exponent); float p ...

  9. 几种导入osm(openstreetmap)数据的方法

    一osm2pgsql+postgresql+postgis osm2pgsql­——是由OpenStreetMap开发的一个命令行工具负责将OSM数据导入到基于PostgresSql的Postgis的 ...

  10. 登录xdebug

    1.配置 2.先不打断点,调至登录页面 3.在登录必经过处打断点,访问页面输入账号密码点击登录,进入代码追踪模式