把函数内部的变量看成函数的一个属性,从而在其他函数中进行调用,需要注意的是,不管在哪里调用,自己本身函数内部使用或者其他函数中调用都需要进行域指定。
# -*- coding:utf-8 -*-
def fuc1():
#通过一个 ".",使用了fuc2的变量
b = fuc2.a
print b
def fuc2():
#这里需要注意的是,在fuc2函数内部使用a,同样要进行域确定,即
#fuc2.a,才能访问
fuc2.a = 0
fuc1()
fuc2() #打印的结果是 0
#访问fuc2的变量
print fuc2.a #打印的结果还是 0
#当在外面进行值变化时,fuc2的变量改变了,从而实现了全局变量的效果
fuc2.a = 2
fuc1() #全局变量的实现,现在输出的结果是 2
先在其他函数进行定义,在本身函数内进行使用
def fuc1():
b = fuc1.a+2
print b
def fuc2():
fuc1.a = 5
'''
下面两个语句是正确的,但是如果我们把fuc2注释掉。不先使用fuc2函数,直接调用fuc1,会显示fuc1没有a属性
'''
fuc2()
fuc1() #输出的结果是7