首页 > 其他 > 详细

嵌套函数和作用域

时间:2019-05-13 11:57:56      阅读:96      评论:0      收藏:0      [点我收藏+]

看上面的标题的意思是,函数还能套函数?

name = "Alex"
 
def change_name():
    name = "Alex2"
 
    def change_name2():
        name = "Alex3"
        print("第3层打印",name)
 
    change_name2() #调用内层函数
    print("第2层打印",name)
 
 
change_name()
print("最外层打印",name)

此时,在最外层调用change_name2()出错

 

作用域在定义函数时就已经固定住了,不会随着调用位置的改变而改变

例一:
name=alex

def foo():
    name=lhf
    def bar():
        print(name)
    return bar

func=foo()
func()


例二:
name=alex

def foo():
    name=lhf
    def bar():
        name=wupeiqi
        def tt():
            print(name)
        return tt
    return bar

func=foo()
func()()

 

嵌套函数和作用域

原文:https://www.cnblogs.com/hui147258/p/10855764.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!