全局变量和局部变量有什么区别(python中的全局变量和局部变量介绍)

 分类:IT知识时间:2022-10-09 07:30:03点击:

在python学习中我们会经常遇到全局变量和局部变量;为了加深大家对这2个变量的理解,现在对这2个变量做个深入的拆分。

一、什么是全局变量?

1、在Python中,全局变量指的是可以作用于函数内部和外部的变量。

2、在这里有两种情况:在函数的外部定义和内部定义添加global关键词变成全局变量。

二、什么是局部变量?

局部变量就是定义在一个函数体内部的变量

三、语法拓展解析

1、简单区分局部变量和全局变量

a = 1 # 全局变量是定义在函数外面的变量def f():
    b = 2 # 局部变量print(a) # 全局变量


2、在Python中,内部定义的函数中,添加关键词global后,改变量就变成了全局变量。

b = '我爱Python,我在学习Python!'   # 定义全局变量print('函数外部全局变量b=',b)      # 在函数外部输出全局变量def a():                # 定义函数
    global b              # 添加global关键字
    b = '人生苦短,我用Pyhon!'    # 定义局部变量
    print('函数内部全局变量b=',b)    # 在函数内部输出全局变量a()                   # 调用函数print('函数外部全局变量b=',b)      # 在函数外部输出全局变量


从上面的结果可以看出,在函数内部变量前面添加关键字global,就变成了全局变量了。

3、注释:内部变量(局部变量)可以和外部变量(全局变量)重名

b = '我爱Python,我在学习Python!'    # 定义全局变量print('函数外部全局变量b=',b)      # 在函数外部输出全局变量def a():                # 定义函数
    b = '人生苦短,我用Pyhon!'    # 定义局部变量
    print('函数内部局部变量b=',b)    # 在函数内部输出全局变量a()                   # 调用函数print('函数外部全局变量b=',b)      # 在函数外部输出全局变量


从上面的结果可以看出,内部变量(局部变量)可以和外部变量(全局变量)重名,不影响全局变量的值。

4、引用全局变量

a = '我爱Python,我在学习Python!'    # 定义全局变量print('函数外部全局变量a=',a)      # 在函数外部输出全局变量def f():                # 定义函数
    b = a    # 全局部变量
    print('函数内部局部变量b=',b)    # 在函数内部输出全局变量f()                   # 调用函数


5、改变全局变量的值

a = '我爱Python,我在学习Python!'    # 定义全局变量print('函数外部全局变量a=',a)      # 在函数外部输出全局变量def f():                # 定义函数
    a = "爱学习的小孩"    # 此时a是全局变量,还是局部变量?
    print('函数内部局部变量=a',a)    # 在函数内部输出变量f()                   # 调用函数print('函数内部局部变量=a', a)

除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址: