zoukankan      html  css  js  c++  java
  • python 1-1模块介绍和使用

    1. 什么是模块
      1.1 模块就是一系列功能的集合体
        1.1.1 模块有三种来源
            1.内置的模块
            2.第三方的模块
            3.自定义模块
        1.1.2 模块的格式:
          1.使用Python编写的.py文件
          2.已被编译为共享库或DLL的C或C++扩展
          3.把一系列模块组织到一起的文件夹
          (注:文件夹下有一个__init__.py文件,该文件夹称之为包)
          4.使用C编写并链接到Python解释器的内置模块

    2.为何要用模块
      2.1 使用内置的或者第三方模块的好处是: 拿来主义,可以极大提升开发效率
      2.2 使用自定义模块的好处是: 可以减少代码冗余(抽取我们自己程序中要公用的一些功能定义成模块,然后程序的各部分组建都去模块中调用共享的功能)

    3.如何用模块
      3.1 大前提: 一定要区分开谁是执行文件,谁是被导入模块
      例如: 文件名spam.py, 模块名则是spam
      import spam
      首次导入模块发生了三件事:
        1. 会产生一个模块的名称空间
        2. 执行文件spam.py, 将执行过程中产生的名字都放到模块的名称空间中
        3. 在当前执行文件的名称空间中拿到一个模块名, 该名字指向模块的名称空间
        import spam
        import spam
        ...
        之后的导入,都是直接引用第一次导入的成果, 不会重新执行文件

        在执行文件中访问模块名称空间中名字的语法: 模块名.名字
        print(spam.x)
        指名道姓地跟spam要名字x, 肯定不会与当前执行文件中的名字冲突

        总结import导入模块: 在使用时必须加上前缀: 模块名.
        优点: 指名道姓地向某一个名称空间要名字, 肯定不会与当前名称空间中的名字冲突
        缺点: 但凡应用模块中的名字都需要加前缀, 不够简洁

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

        总结from...import...
        优点: 使用时, 无需再加前缀,更简洁
        缺点: 容易与当前名称空间中的名字冲突

  • 相关阅读:
    从netty源码里拿到的关于http错误码,自己学习下
    9步搞定:用迅雷等工具下载百度网盘资源
    jstack定位cpu高占用
    solr学习笔记section2-solr单机(节点)简单的core操作
    solr学习笔记section1-在tomcat中部署单(节点)机solr5.5.4
    简单排序
    Thrift生成的bean对象,用java内省操作时注意(自己笔记)
    Netty方法误解ChannelHandlerContext.writeAndFlush(Object msg)
    腾讯笔试题,木棍组成多边形判断
    微软笔试题,luckstring
  • 原文地址:https://www.cnblogs.com/earon/p/9440488.html
Copyright © 2011-2022 走看看