zoukankan      html  css  js  c++  java
  • python学习手册笔记——24.高级模块话题

    00.把下划线放在变量名前面,可以防止客户端from *语句导入模块名时,把其中的那些变量名赋值出来。这其实时为了对命名空间的破快最小化。

    01.可以把模块顶层把变量名的字符串列表赋值给变量__all__,以达到类似于_X命名惯例的隐藏效果。

    02.__name__和__main__
    a.如果文件是以顶层程序文件执行,在启动时,__name__就会设置为字符串"__main__".
    b.如果文件被导入,__name__就会改设成客户端所了解的模块名
    一个模块的__name__变量充当一个使用模式标志,允许它编写成一个可导入的库和一个顶层脚本。

    03.import和from语句都可以扩展,让模块可以在脚本中给予不同的变量名:
    import modulename as name
    相当于:
    import modulename
    name = modulename
    del modulename

    04.模块通过内置属性显示了他们的大多数有趣的特性,因此,可很容易地白那些程序来管理其他程序。

    05.模块设计理念:需要思考那些函数要放进模块、模块通信机制等。当开始编写较大的Python系统时,这些就会变得明亮起来
    *总是在Python的模块内编写代码
    *模块耦合要降到最低:全局变量。原则就是,模块应该尽可能你和其他模块的全局变量无关,除了于从模块导入的函数和类。
    *最大化模块的粘合性:同一目标
    *模块uing该少去修改器它模块的变量。

    06.from复制变量名,而不是连接。from语句其实时在导入者的作用域内对变量名复制语句,也就是变量名拷贝运算,而不是变量名的别名机制。

  • 相关阅读:
    状态机的常见问题
    基于quartus的高级时序分析
    FPGA中的时钟域问题
    quartus中的时序约束常用方法
    时序约束与时序分析
    FPGA的PCB设计
    AXI4的主机协议代码分析
    selenium 笔记 场景判断
    Codeforces Round #676 (Div. 2) XORwice、Putting Bricks in the Wall、Palindromifier
    Trap HDU
  • 原文地址:https://www.cnblogs.com/aixiaoxiaoyu/p/11215684.html
Copyright © 2011-2022 走看看