1、变量后面跟一个等号是局部变量
2、变量直接使用是全局变量
3、用gloabl定义的是全局变量
局部变量: i
详细解释:fun()里面的 i 是局部变量,打印结果为100.
#!/usr/bin/python
# -*- coding: UTF-8 -*-
i = 10
def fun():
i = 100
i=i+1
print i
fun()
print i
全局变量:i
详细解释:fun()里面的 i 不是 "i=" 的形式,所以是全局变量
#!/usr/bin/python
# -*- coding: UTF-8 -*-
i = 10
def fun():
print i
fun()
全局变量:i
详细解释:fun2里面的i会报错,fun3里面的i不会报错。因为,"i=" 的形式,让程序认为这是一个局部变量,但是后面自增 i 的写法是把i 当成全局变量使用,所以出错。
#!/usr/bin/python
# -*- coding: UTF-8 -*-
def fun():
global i
i = 1
i = i+1
print i
def fun2():
i=i+1
print i
def fun3():
print i
更多内容请关注微信公众号“外里科技”
官方公众号 | 外里科技 |
运营公众号 | 英雄赚 |
开源代码 |