Python 全局变量与局部变量

全局变量:在函数外部定义的变量,所有的函数都可以使用这个变量

局部变量:在函数内部定义的变量,只能在函数内部使用

在函数内部修改全局变量,使用关键字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、不同的函数之间同名的局部变量,彼此之间没有关系,互不影响。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值