zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    实现Echarts折线图的虚实转换
    解决Webpack 安装sass时出现的错误
    Videojs视频插件在React中的应用
    overflow应用场景
    【JS Note】字符串截取
    【JS Note】undefined与null
    Web 网页常见问题集锦
    微信内置浏览器中,点击下拉框出现页面乱跳转现象(iphone)
    input美化 checkbox和radio样式
    Discuz!图片查看插件(支持鼠标缩放、实际大小、旋转、下载)
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12298147.html
Copyright © 2011-2022 走看看