python的global语句不能作用在函数内的函数吗?

在自学……x=10deffunc_outer():x=2print("xis",x)deffunc_inner():globalxx=5func_inner()print... 在自学……
x=10
def func_outer():
x= 2
print("x is", x)
def func_inner():
global x
x= 5
func_inner()
print('Changed local x to',x)
func_outer()
print ('x is ',x)

输出出来是
x is 2
Changed local x to 2
x is 5

也就是说,global x 根本影响不到func_inner()咯?
展开
 我来答
ahzb0565
2015-04-17 · TA获得超过141个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:93.4万
展开全部
也不能这么说。
x = 10 #先叫他原始x
原始x 就是func_inner() 的x
但是func_outer() 的x跟原始x和func_innter() 的x没关系。这个是local x
你可以用id(x)查看,会发现,inner x的id 跟func_outer 的x 的id不相等。但原始x与inner x id 一样。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式