模块

概念:一系列功能的结合体。相当于模块包着一堆函数与代码。本质上是py文件

来源

  • python内置的模块----→ python解释器的模块
  • 第三方的模块 -----→ 其他人编写提供的
  • 自定义的模块 -----→ 我们自己编写的模块

表现形式:

  • 使用python 编写的py文件
  • 编译后的共享库,如:DLL、C 或C++ 库
  • **包里面带有__ init __.py 的一组py 文件**
  • python解释器下的py 文件

: 把一系列模块组织到一起的文件夹,且包含包含__ init __.py文件的文件夹称之为包。用来存放模块,可更好地管理模块

使用模块的好处

  • 便于管理功能代码。将项目拆分成一个个的功能,分别存放在不同的.py文件中
  • 使用python内置或第三方的模块,可提高开发效率

创建模块步骤:

  • 创建py 文件

    • 在py 文件中编写python 代码
  • 在一个文件中,通过import 导入
    • 语法import 模块名
    • 注意:import 模块名时,模块名后面不能接.py

模块导入时发生的事情

  1. 会先执行当前执行文件,并产生执行文件中的名称空间。
  2. 当执行到导入模块的代码时,被导入的模块会产生一个模块的名称空间
  3. 会将被导入模块的名称空间加载到内存中。

模块的导入方式:

  • import 模块:在执行文件中直接import 导入
  • from 包/模块 import 模块/(函数名、变量名、类名)

注意:

  • 在使用模块阶段,必须注意,谁是执行文件,谁是被导入文件

  • 模块在首次导入时,就已经固定好了。文件查找顺序先从内存中查找

循环导入问题解决方法

  1. 需要查找的名字放在导入模块的上方
  2. 在函数内部导入,将模块变成函数名称空间的名字

python基础-模块(全是理论,没有代码)的更多相关文章

  1. python基础——模块

    python基础——模块 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文 ...

  2. 自学Python之路-Python基础+模块+面向对象+函数

    自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python    1.1 自学Python1.1-简介    1.2 自学Python1.2-环境的 ...

  3. python基础-模块

    一.模块介绍                                                                                              ...

  4. Python菜鸟之路:Python基础-模块

    什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护.为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,分组的规则就是把实现了某个 ...

  5. Python基础+模块、异常

    date:2018414+2018415 day1+2 一.python基础 #coding=utf-8 #注释 #算数运算 +(加)  -(减)  *(乘)  /(除)  //(取整)  %(取余) ...

  6. Python 基础 模块

    python 中模块和保定 概念 如果将代码分才投入多个py 文件,好处: 同一个变量名也互不影响.   python 模块导入 要使用一个模块,我们必须先导入该模块.python 使用import ...

  7. python基础----模块、包

    一 模块                                                                                                 ...

  8. Python基础-模块与包

    一.如何使用模块 上篇文章已经简单介绍了模块及模块的优点,这里着重整理一下模块的使用细节. 1. import 示例文件:spam.py,文件名spam.py,模块名spam #spam.py pri ...

  9. Python基础篇(三)_函数及代码复用

    Python基础篇_函数及代码复用 函数的定义.使用: 函数的定义:通过保留字def实现. 定义形式:def <函数名>(<参数列表>): <函数体> return ...

随机推荐

  1. 笔记-JFB:业务流程梳理

    ylbtech-笔记-JFB:业务流程梳理 1.家政员找工作-->填写基本信息-->上岗申请--> 1.返回顶部 1. 2. 2. 2.返回顶部   3.返回顶部   4.返回顶部 ...

  2. Django框架入门1虚拟开发环境的配置

    1.安装virtualenv虚拟程序 C:\Users\ws>pip install virtualenv 创建名字为testvir的虚拟环境 C:\Users\ws>virtualenv ...

  3. C++ list运用实例

    C++ list运用实例 #include <list> #include <iostream> #include <algorithm> #include < ...

  4. windows系统下设置mtu值的方法

    说起 MTU 值,可能许多朋友连听都没听说过.简单来说,我们上网时所进行的操作,都是通过传输一个又一个“数据包”来实现的,而 MTU 值就是用来设定可传输数据包的最大尺寸的.很显然,MTU 值设置得过 ...

  5. 开发日记:在VS项目中使用SVN版本号作为编译版本号

    在实际项目中(特别是作为产品的项目),版本号是必不可少的一部分.版本号的规则也有许多种,在此不讨论具体的编码规范.对于迭代的产品,版本繁多,特别是有多个实施项目所使用产品的版本不同(基于定制需求)时, ...

  6. 5中I/O模型

    输入操作包括两个阶段1.等待网络数据到达,被复制到内核中的缓冲区2.从内核缓冲区复制到进程缓冲区5种I/O模型1.阻塞式I/O:包含数据被复制到内核缓冲区和应用进程缓冲区两个过程,调用recvfrom ...

  7. mysql 8.0下的SELECT list is not in GROUP BY clause and contains nonaggregated column

    mysql的版本 mysql> select version();+-----------+| version() |+-----------+| 8.0.12 |+-----------+ 在 ...

  8. hive 集群搭建

    软件环境:centos7 + hadoop2.7.6 1.hive 下载 apache-hive-2.1.0-bin.tar.gz 2.copy  apache-hive-2.1.0-bin.tar. ...

  9. 不同版本的ArcMap在Oracle中创建镶嵌数据集的不同行为

    如果不同版本的ArcMap连接到同一个Oracle数据库上,分别执行"创建镶嵌数据集",它们的行为是一样的吗? 答案是:不一样,会有细微的差别 在本例中,ArcMap的版本分别是1 ...

  10. DDD分层架构的三种模式

    引言 在讨论DDD分层架构的模式之前,我们先一起回顾一下DDD和分层架构的相关知识. DDD DDD(Domain Driven Design,领域驱动设计)作为一种软件开发方法,它可以帮助我们设计高 ...