• python-模块入门


    一、模块介绍

    模块:模块就是一系列功能的集合体

    模块有三种来源: 1.内置模块

             2.第三方的模块

             3.自定义模块

    模块的格式: 1使用python编写的.py文件     

           2.已被编译为共享库或DLL的C或C++扩展

           3.把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件称之为包)       

           4.使用C编写并链接到python解释器的内置模块

    为何要用模块?

      1.使用内置的或者第三方模块的好处是:拿来主义,可以极大提升开发效率

      2.使用自定义模块的好处是:可以减少代码冗余(抽取我们自己程序中要公用的一些功能定义成模块,然后程序的各部分组件都去模块中调用共享功能)                 

    注: 一定要区分开谁是执行文件,谁是被导入模块       

    二、import导入模块

    首次导入模块:

      1.会产生一个模块的名称空间

      2.执行模块文件,将执行过程中产生的名字都放到模块的名称空间中

      3.在当前执行文件的名称空间中拿到一个模块名,该名字指向模块的名称空间

    后面的导入,都是直接引用第一次导入的成果,不会重新执行文件

    spam.money   在执行文件中访问模块名称空间中名字的语法:  模块名.名字(注:模块名应该全部为小写)

    指名道姓地跟spam要money  不会与当前执行文件中的名字冲突

    为模块起别名  import xxx as x

    总结import导入模块:

      优点:指名道姓地向某一个名称空间要名字,不会与当前名称空间中的名字冲突

      缺点:但凡应用模块中的名字都需要前缀,不够简洁

    三、from...import...导入模块

    首次导入模块:

      1.会产生一个模块的名称空间

      2.执行模块文件,将执行过程中产生的名字都放到模块的名称空间中

      3.在当前执行文件的名称空间中拿到一个名字,该名字就是执行模块中对应的名字

    总结from...import...

      优点:使用时,无需再加前缀,更简洁

      缺点:容易与当前名称空间中的名字冲突

    补充:

      from xxx import * 导入全部   *代表从被导入模块中拿到所有名字(不推荐使用)

      在导入模块时,如果未找到__all__中的成员,抛出attributeError

    # __all__ = ['money','read1']
  • 相关阅读:
    sharedWorker 实现多页面通信
    cookie跨域那些事儿
    event loop整理
    tsConfig/baseUrl -- 一键告别相对路径import
    vscode配置golang开发环境手把手描述篇
    Vue学习笔记二
    Vue学习笔记
    echarts迁移图动态加载
    病虫害可视化监测平台(一)
    昆虫识别开发进展APP(四)
  • 原文地址:https://www.cnblogs.com/mangM/p/9436680.html
Copyright © 2020-2023  润新知