Python 全局变量的用法

直奔主题实战 Python 全局变量, 注意分析输出的结果:在 hello1 中,其实操作的是局部变量 GLOBAL_VAR (其名字有点唬人),hello2()的两次调用操作的都是全局变量 GLOBAL_VAR

#!/usr/bin/env python
# -*- coding: utf-8 -*-
GLOBAL_VAR = 3

def hello1():
    print 'In the hello'
    tmp = 1
    # 因为函数中也可定义同名的变量,这样局部的变量就覆盖了全局的变量
    GLOBAL_VAR = 30
    GLOBAL_VAR = GLOBAL_VAR + tmp
    print 'GLOBAL_VAR = {0}'.format(GLOBAL_VAR)


def hello2():
    print 'In the hello'
    tmp = 1
    # 因为函数中也可定义同名的变量,这样局部的变量就覆盖了全局的变量,
    # 要想改变全局变量的值,需要在函数中 global GLOBAL_VAR 说明 GLOBAL_VAR 是全局变量
    global GLOBAL_VAR
    GLOBAL_VAR = GLOBAL_VAR + tmp
    print 'GLOBAL_VAR = {0}'.format(GLOBAL_VAR)

hello1()
hello2()
hello2()

# The output is:
	In the hello
	GLOBAL_VAR = 31
	In the hello
	GLOBAL_VAR = 4
	In the hello
	GLOBAL_VAR = 5
发布了44 篇原创文章 · 获赞 0 · 访问量 3961

猜你喜欢

转载自blog.csdn.net/cpxsxn/article/details/99640938
今日推荐