python 全局变量怎么用

 我来答
wanghan519
2017-07-07
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

在内部用之前加上global x的声明,就是全局变量

两个例子

a=1
def f():
    a=2
    print a

f()
print a

a=[1]
def f():
    a[0]=2
    print a[0]

f()
print a[0]

第一个函数里一旦a=2这样写,就相当于定义了一个新的变量a,这个变量a只在函数内有效,如果想让他引用全局的a,就要在前面加一句global a。第二个函数里a[0]列表取值先于赋值操作,会自动找到上一级里的a,这时操作的a[0]实际上是全局变量,没必要加global a。

说的易懂点:在内部使用global这样的声明,会让人产生这样的错觉,即内部只能用内部的变量,要用外部的变量必须global声明,这是错误的。global只是为了规避赋值操作的意思表达不明,python调用变量如果内部找不到自动会去寻找外部变量,就像第二个例子。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式