zoukankan      html  css  js  c++  java
  • python系统学习:第三周之嵌套函数

    # 这个例子说明如果函数中没有直接定义某变量,则他会向父级寻找,优先级:自己-父级-爷爷级···
    name = "niu"
    def guess():
    print(">>NO.1", name)
    guess() # 输出"niu"

    # 嵌套函数(函数当中包含函数)
    name2 = "shi"
    def guess2():
    name2 = "chong"
    print(">>NO.2.1", name2)
    def guess3():
    name2 = "牛"
    print(">>NO.2.2", name2)
    guess3() # 调用guess2()时,不会直接触发guess3(),在一级一级往下执行时,末尾加上触发二级函数的语句,才会执行

    guess2() # 执行输出 chong 和 牛 ,进一步验证guess()的结论

    # 嵌套函数拓展
    name3 = "shi"
    def guess3():
    print(">>NO.3.1", name3)
    def guess4():
    name3 = "牛"
    print(">>NO.3.2", name3)
    name3 = "chong"
    guess4()

    guess3() # 会报错,因为执行"print(">>NO.3.1", name3)" name3的寻找模棱两可

    # 嵌套函数拓展2
    name4 = "shi"
    def guess4():
    global name4
    name4 = "屎"
    print(">>NO.4.1", name4)
    def guess5():
    print(">>NO.4.2", name4)
    guess5()

    guess4()
    print(name4) # 利用global函数,将局部变量的name4变量变成全局变量 不建议使用
  • 相关阅读:
    MySQL/MariaDB/Percona数据库升级脚本
    systemd详解
    Nginx下Redmine2.6配置
    Linux下Python获取IP地址
    浅谈Linux内存管理机制
    深入理解PHP Opcode缓存原理
    Varnish – 高性能http加速器
    问题记录
    Java 排序报错
    记录一次数据库链接不够用被drop掉的问题
  • 原文地址:https://www.cnblogs.com/niushichong/p/10037057.html
Copyright © 2011-2022 走看看