欢迎光临散文网 会员登陆 & 注册

第八章 函数-5

2023-07-11 10:47 作者:wangyanhpa  | 我要投稿

8.5 全局变量和局部变量

局部变量是在函数内部定义的变量,只能在函数内部使用,用作临时保存函数内部需要使用的数据,函数执行结束后,函数内部的局部变量,会被系统回收。因此在不同的函数内可以定义相同的名字的局部变量,彼此之间不会产生影响。全局变量是在函数外部定义的变量(没有定义在某一个函数内),所有函数内部都可以使用这个变量。请看下面例子:

total = 10  # 这是一个全局变量

 

def sum(arg1, arg2):

    # 返回2个参数的和

    total = arg1 + arg2  # total在这里是局部变量.

    print("函数内是局部变量 : ", total)

    return total

 

# 调用sum函数

sum(10, 20)

print("函数外是全局变量 : ", total)

 

运行程序输出结果为:

函数内是局部变量 :  30

函数外是全局变量 :  0

 

但是存在一个问题,函数内部怎么使用全局变量呢?答案:函数内部加一行代码说明使用全局变量,上面程序可以改写成下述形式,实现函数内部访问全局变量total。

total = 20  # 这是一个全局变量

 

def sum(arg1, arg2):

    # 返回2个参数的和

    global total

    total = arg1 + arg2  # total在这里是全局变量.

    print("函数内是全局变量 : ", total)

    return total

 

# 调用sum函数

print("调用函数前,函数外是全局变量 : ", total)

sum(20, 30)

print("调用函数后,函数外是全局变量", total)

 

运行程序输出结果为:

调用函数前,函数外是全局变量 :  20

函数内是全局变量 :  50

调用函数后,函数外是全局变量 50


第八章 函数-5的评论 (共 条)

分享到微博请遵守国家法律