模块

概念:一系列功能的结合体。相当于模块包着一堆函数与代码。本质上是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. sklearn的基本使用

    https://cloud.tencent.com/developer/news/58202 简介 今天为大家介绍的是scikit-learn.sklearn是一个Python第三方提供的非常强力的机 ...

  2. YII2框架集成go!aop

    AOP实践:YII2框架本身拥有一个功能,叫做行为.它可以动态的为当前的类附加额外的功能,但这种功能在代码层级结构是静态的,有侵入性的. 下面以YII2框架集成go!aop库为例,介绍在YII2中如何 ...

  3. WinForm自动记录从上次关闭位置启动窗体

    次功能主要是通过在注册表中读写窗体的Location属性来实现的.在窗体关闭前处理窗体的FormClosed事件,将窗体的Location属性值写入注册表,然后在窗体的Load事件中从注册表中读取保存 ...

  4. 【C/C++开发】模板类

    1.模板的概念 我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同.正确的调用重载函数.例如,为求两个数的最大值,我们定义MAX()函数需要 ...

  5. DOM事件: DOM事件级别、DOM事件流、DOM事件模型、DOM事件捕获过程、自定义事件

    前端面试中只要问到事件,就肯定会有DOM事件:如果回答出来了,就会一直向下延申,其实这些东西都很简单,但我第一次被问到的时候,也是懵的: DOM事件级别: DOM0 element.onclick = ...

  6. Kubernetes 及安装注意事项

    Docker Desktop for Mac/Windows开启Kubernetes 及安装注意事项 Table of Contents 1 解决方案 2 注意事项 2.1 Choose Kubeco ...

  7. JSON学习(一)

    JSON: 1. 概念: JavaScript Object Notation     JavaScript对象表示法 Person p = new Person(); p.setName(" ...

  8. error adding symbols:DSO missing from command line

    编译时加上-lz,如果是使用eclipse,则在添加库z

  9. Django框架之第三篇(路由层)--有名/无名分组、反向解析、路由分发、名称空间、伪静态

    一.Django请求生命周期 二.路由层  urls.py url()方法 第一个参数其实就是一个正则表达式,一旦前面的正则匹配到了内容,就不会再往下继续匹配,而是直接执行对应的视图函数. djang ...

  10. H5页面跳转与传值

    页面之间的跳转经常使用a标签,使用mvc框架的都是通过访问controller的请求方法,返回请求页面.但本次开发,前端与后台完全分离,前端APP使用HBuider来开发,后台数据就无法使用mvc框架 ...