* 全局变量:在函数外部定义的变量,所有的函数都可以使用这个变量
* 局部变量:在函数内部定义的变量,只能在函数内部使用
在函数内部修改全局变量,使用关键字global
num = 1
def demo():
global num
num = 2
print(num)
demo()
变量定义位置
变量定义的位置,应在调用之前进行设置,如下面的demo,num1和num2可以被调用,num3不可以,因为在demo函数调用之前,num1和num2已经被定义,而num3没有被定义,Python程序从上往下执行,在调用函数的时候,num3变量还没有定义,并没有被Python解释器识别。
注意:在开发时,应该把所有全局变量定义在函数上方,这样就能保证所有函数都能正常访问每一个全局变量
num1 = 1
def demo():
print("%s" % num1)
print("%s" % num1)
print("%s" % num1)
num2 = 2
demo()
num3 = 3
代码结构示意图
shebang(声明解释器)
import 模块
全局变量
函数定义
执行代码
===============================================================================
全局变量命名规范
1、为了避免全局变量与局部变量混淆,全局变量推荐使用g_或者gl_开头
局部变量的生命周期
1、局部变量在函数执行时才会被创建,在函数执行结束时变量被系统回收,在局部变量的生命周期内,可以用来存储函数内部临时使用的数据。
2、不同的函数之间同名的局部变量,彼此之间没有关系,互不影响。