鱼C论坛

 找回密码
 立即注册
查看: 3022|回复: 5

在函数内用global声明为什么不行

[复制链接]
发表于 2014-6-6 16:16:53 | 显示全部楼层 |阅读模式
1鱼币
def fun1():
        x = 5
        def fun2():
                x*= x
                return x
        return fun2()
这样一个程序要改正它,用global为什么不行?
我这样用global声明为什么不行?请高手解答
def fun1():        global x        x = 5        def fun2():                x*= x                return x        return fun2()正确答案小甲鱼是这样给的:def fun1():        x = 5        def fun2():               nonlocal x                x*= x                return x        return fun2()

最佳答案

查看完整内容

nonlocal关键字用来在函数或其他作用域中使用外层的(非全局)变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-6 16:16:54 | 显示全部楼层
nonlocal关键字用来在函数或其他作用域中使用外层的(非全局)变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-18 20:17:50 | 显示全部楼层
我是VIP,我骄傲!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-18 20:20:34 | 显示全部楼层
我只是路过打酱油的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-18 20:23:16 | 显示全部楼层
支持小甲鱼,赞点鱼币回来下载
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-18 20:25:54 | 显示全部楼层
支持小甲鱼,赞点鱼币回来下载
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 21:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表