• Python3基础 函数 局部与全局变量同名,各管各的


    •        Python : 3.7.0
    •          OS : Ubuntu 18.04.1 LTS
    •         IDE : PyCharm 2018.2.4
    •       Conda : 4.5.11
    •    typesetting : Markdown

    code

    """
    @Author : 行初心
    @Date   : 18-9-24
    @Blog   : www.cnblogs.com/xingchuxin
    @Gitee  : gitee.com/zhichengjiu
    """
    
    var = 10
    
    
    def test():
        # 全局变量与局部变量存储在两个不同的空间
        # pycharm提示:Shadows name 'var' from outer scope
        var = 5
    
        print("test ", var)  # 局部变量
    
    
    def main():
        print("main ",  var)  # 全局变量
        test()
        print("main ",  var)  # 全局变量
    
    
    if __name__ == '__main__':
        main()
    
    

    result

    /home/coder/anaconda3/envs/py37/bin/python /home/coder/PycharmProjects/basic/demo.py
    main  10
    test  5
    main  10
    
    Process finished with exit code 0
    
    

    more knowledge

    • 为什么会出现重名的问题呢?因为代码命名不规范!如何避免呢?遵守规范。全局变量要带上前缀 gl_,即gl_var。

    resource

    • [文档] docs.python.org/3
    • [规范] www.python.org/dev/peps/pep-0008
    • [规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules
    • [源码] www.python.org/downloads/source
    • [ PEP ] www.python.org/dev/peps
    • [平台] www.cnblogs.com
    • [平台] gitee.com


    Python具有开源、跨平台、解释型、交互式等特性,值得学习。
    Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
    代码的书写要遵守规范,这样有助于沟通和理解。
    每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

  • 相关阅读:
    华为摄像机sdc开发_02_华为摄像机到手后的一些问题
    华为摄像机sdc开发_01_基础开发环境搭建
    LNMP环境搭建及服务器加固
    常用数据库端口号
    Linux文件查找
    SpringBoot使用jackson
    Vue.js源码解析-Vue初始化流程之动态创建DOM
    Vue.js源码解析-Vue初始化流程
    Vue.js源码解析-从scripts脚本看vue构建
    Linux系统编程-文件IO
  • 原文地址:https://www.cnblogs.com/xingchuxin/p/10433676.html
Copyright © 2020-2023  润新知