本文已参与「新人创作礼」活动,一起开启掘金创作之路。
1. 局部变量和全局变量
局部变量是在函数内部定义的变量,只能在函数内部使用
全局变量是在函数外部定义的变量(没有定义在某一个函数内),所有函数内部都可以使用这个变量
提醒:在其他的开发语言中,大多不推荐使用全局变量(因为可变范围太大,导致程序不好维护)
2. 局部变量
局部变量是在函数内部定义的变量,只能在函数内部使用
函数执行结束后,函数内部的局部变量,会被系统回收
不同的函数,可以定义相同的名字的局部变量,但是各用各的不会产生影响
作用:在函数内部使用,临时保存函数内部需要使用的数据
局部变量的生命周期:
- 所谓生命周期就是变量从被创建到被系统回收的过程
- 局部变量在函数执行时才会被创建
- 函数执行结束后局部变量被系统回收
- 局部变量在生命周期内,可以用来存储函数内部临时使用到的数据
3. 全局变量
全局变量是在函数外部定义的变量,所有函数内部都可以使用这个变量
在函数内部,可以通过全局变量的引用获取对应的数据
但是,不允许直接修改全局变量的引用--使用赋值语句修改全局变量的值
# 全局变量:在函数外部定义,但是在函数内部能够访问
num = 10
def demo1():
print("demo1 ==> %d" % num)
def demo2():
print("demo2 ==> %d" % num)
demo1()
demo2()
运行结果如下图所示:在函数外部定义的变量,其他函数内部都可以访问到外部定义的变量。
在函数内部如果想使用一个变量,Python解释器首先在函数内部查找是否有这个局部变量。如果有就使用,如果没有找到同名的局部变量,才会向外查找。
在函数内部使用赋值语句,只会在函数内部定义一个局部变量,不会改变全局变量的值。