• Python全局变量和局部变量


    Python全局变量和局部变量:

    定义在函数内的为局部变量,在外部访问局部变量会出现未定义的错误

    定义在函数外的变量称为全局变量,可以在整个函数范围内访问

    当函数中存在与全局变量重名的变量,以函数中的局部变量为准

    定义在函数中的局部变量的作用域只在函数中

    # 定义全局变量 total
    total = 0
    
    def add(num1,num2):
        # 定义局部变量 total
        total = num1 + num2
        # 输出局部变量
        print(total)
        
    
    add(4,6)
    # 10
    print(total)
    # 0

    在函数内部,如果想要修改外部变量时,可以使用 global 或 nonlocal 关键字

    global 全局变量名:

    在函数中使用全局变量,可以对全局变量进行修改。

    注:如果只是在函数中使用了和全局变量相同的名字,则只是局部变量

    # 定义全局变量 total
    total = 0
    
    def add(num1,num2):
        # 使用 global 关键字声明全局变量 total
        global total
        total = num1 + num2
        # 输出全局变量
        print(total)
    
    add(4,6)
    # 10
    # 输出全局变量
    print(total)
    # 10

    nonlocal 嵌套作用域中的变量(嵌套函数,外层函数与内层函数之间):

    修改嵌套函数之间的变量

    # nonlocal 嵌套作用域中的变量(嵌套函数,外层函数与内层函数之间):
    # 修改嵌套函数之间的变量
    
    def func_out():
        num = 5
        def func_inner():
    
            # 使用嵌套函数中的 num 值
            nonlocal num
    
            num = 10
            print("最内部函数中的 num 的值:",num)
        func_inner()
        print("嵌套函数中的 num 的值:",num)
    func_out()
    # 最内部函数中的 num 的值: 10
    # 嵌套函数中的 num 的值: 10

     


    2020-02-12

  • 相关阅读:
    狗蛋带仨妞【Beta】Scrum meeting 1
    实验九 团队作业5:团队项目编码与Alpha冲刺
    狗蛋带仨妞【Alpha】Scrum meeting 7
    狗蛋带仨妞【Alpha】Scrum meeting 6
    狗蛋带仨妞【Alpha】Scrum meeting 5
    狗蛋带仨妞 【Alpha】Scrum meeting 1-4
    Rosetta中准备配体的参数文件
    pymol安装
    chemshell的creation之后
    关于KIE的一点认识
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12298147.html
Copyright © 2020-2023  润新知