一.模块介绍

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

    模块有三种来源:

      1.内置模块:python内提供的模块

      2.第三方模块:由第三方提供的模块

      3.自定义模块:自行定义的模块

    模块的格式:

      1.使用python编写的py文件
      2.已被编译为共享库或DLL的C或C++扩展
      3.把一系列模块组织到一起的文件夹(文件夹下有一个__init__.py文件,该文件夹称为包)
      4.使用C编写并链接到python解释器的内置模块

  如何用模块?

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

    2.使用自定义模块的好处是可以减少代码冗余

  使用模块的大前提:一定要区分开谁是执行文件,谁是被导入文件

二.import导入模块

  使用关键字import即可导入模块:import 模块名(模块名为全是小写)

  例如:

    

  首次导入模块发生了三件事:

    1.会产生一个模块的名称空间
    2.执行spam.py,将执行过程中产生的名字都放到模块的名称空间中
    3.在当前执行文件的名称空间中拿到一个模块名,该名字指向模块的名称空间

  多次导入相同的模块,之后的导入,都是直接引用第一次导入的结果,结果不会重新执行文件

  在执行文件中访问模块名称空间中名字的语法:模块名.名字

  例如:

    

  使用import导入模块的优缺点:

    优点:指名道姓地向某一个名称空间要名字,肯定不会与当前名称空间中的名字冲突
    缺点:但凡应用模块中的名字都需要加前缀,不够简洁

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

  使用from...import...导入模块

  例如

    

  导入模块发生3件事
    1.会产生一个模块的名称空间
    2.执行spam.py,将执行过程中产生的名字都放到模块的名称空间中
    3.在当前执行文件中拿到一个名字,该名字就是执行模块中相对应的名字
  使用from...import...导入模块的优缺点:

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

  

Python模块入门(一)的更多相关文章

  1. Python模块入门(二)

    一.模块的循环导入问题 在python工程中,由于架构不当,可能会出现模块间互相引用的情况.这时候需要通过一些方法来解决这个问题 1.重新设计架构,解决互相引用的关系. 2.把import语句放置在模 ...

  2. python从入门到大神---Python的jieba模块简介

    python从入门到大神---Python的jieba模块简介 一.总结 一句话总结: jieba包是分词技术,也就是将一句话分成多个词,有多种分词模型可选 1.分词模块包一般有哪些分词模式(比如py ...

  3. Python开发入门与实战2-第一个Django项目

    2.第一个Django项目 上一章节我们完成了python,django和数据库等运行环境的安装,现在我们来创建第一个django project吧,迈出使用django开发应用的第一步. 2.1.创 ...

  4. python模块介绍- multi-mechanize 性能测试工具

    python模块介绍- multi-mechanize 性能测试工具 2013-09-13 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 3739 ...

  5. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  6. python爬虫入门(六) Scrapy框架之原理介绍

    Scrapy框架 Scrapy简介 Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬 ...

  7. Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分

    1. 爬取前的分析 mitmdump是mitmproxy的命令行接口,比Fiddler.Charles等工具方便的地方是它可以对接Python脚本. 有了它我们可以不用手动截获和分析HTTP请求和响应 ...

  8. Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分

    1. Python爬虫入门教程 爬取背景 2019年1月10日深夜,打开了百思不得姐APP,想了一下是否可以爬呢?不自觉的安装到了夜神模拟器里面.这个APP还是比较有名和有意思的. 下面是百思不得姐的 ...

  9. Python爬虫入门之正则表达式

    在前面我们已经搞定了怎样获取页面的内容,不过还差一步,这么多杂乱的代码夹杂文字我们怎样把它提取出来整理呢?下面就开始介绍一个十分强大的工具,正则表达式! 1.了解正则表达式 正则表达式是对字符串操作的 ...

随机推荐

  1. POI精确设置Excel的行高和列宽

    EXCEL的行高度和列宽度单位是不一样的. 1,EXCEL列高度的单位是磅,Apache POI的行高度单位是缇(twip): 1英寸=72磅=25.4毫米=1440缇1磅=0.353毫米=20缇 P ...

  2. 利用zookeeper生成唯一id,通用性代码

    在上篇中是写死的,这章就写出通用的 package com.cxy.com.cxy.curator; import java.util.concurrent.ExecutorService; impo ...

  3. FPGA实战操作(1) -- SDRAM(操作说明)

    SDRAM是做嵌入式系统中,常用是的缓存数据的器件.基本概念如下(注意区分几个主要常见存储器之间的差异): SDRAM(Synchronous Dynamic Random Access Memory ...

  4. SwiftMailer 发送邮件时 提示fsockopen() 被禁用

    站点转移空间,发送邮件的SwiftMailer 类提示错误如下: Warning: fsockopen() has been disabled for security reasons in D:\1 ...

  5. maven 设置 编码 ,jdk 版本

    <profile> <id>jdk1.8</id> <activation> <activeByDefault>true</activ ...

  6. [USACO18DEC]Sort It Out(树状数组)

    [Luogu5156] 题解 求字典序第 k 小的满足题意的集合,取反一下,就是求序列中字典序第 k 大的最长上升子序列 [51nod1376] 最长递增子序列的数量 置 \(f_{i}\)表示以权值 ...

  7. 2015苏州大学ACM-ICPC集训队选拔赛(2) 1001 1003 1010

    草爷要的榜 Problem Description 苏州大学代表队又勤奋地开始了训练.今天开了一场时长5小时的组队训练赛,苏州大学的n(1<=n<=100)支校队奋力拼(hua)搏(shu ...

  8. dataTable调用接口渲染数据,没有数据,报错

    当没有数据的时候,报错: 解决方法: 在后台那边处理一下,当没有数据的时候,令 data : ' ' 或者 data : [ ] 前端代码: var loading = layer.load(1, { ...

  9. java——异常类、异常捕获、finally、异常抛出、自定义异常

    编译错误:由于编写程序不符合程序的语法规定而导致的语法问题. 运行错误:能够顺利的编译通过,但是在程序运行过程中产生的错误. java异常类都是由Throwable类派生而来的,派生出来的两个分支分别 ...

  10. protobuf在c++的使用方法以及在linux安装

      https://blog.csdn.net/wangyin668/article/details/80046798 https://www.cnblogs.com/zhouyang209117/p ...