模块

概念:一系列功能的结合体。相当于模块包着一堆函数与代码。本质上是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. 如何用 Go 实现热重启

    热重启 热重启(Zero Downtime),指新老进程无缝切换,在替换过程中可保持对 client 的服务. 原理 父进程监听重启信号 在收到重启信号后,父进程调用 fork ,同时传递 socke ...

  2. 【转】WPF DataGridComboBoxColumn使用

    若要填充下拉列表,请首先使用下列选项之一设置 ComboBox 的 ItemsSource 属性.静态资源. x:Static 代码实体.ComboBoxItem 类型的内联集合.实现效果如下: 如需 ...

  3. Qt 一张图片显示在其他组件之上

    图片放在QLabel上,注意设置QLable一些属性 QImage img("test.png"); img = img.scaledToWidth(,Qt::SmoothTran ...

  4. 在条件判断中使用 all() / any()

    在条件判断中使用 all() / any() all() 和 any() 两个函数非常适合在条件判断中使用.这两个函数接受一个可迭代对象,返回一个布尔值,其中: all(seq):仅当 seq 中所有 ...

  5. Linux下安装.NET Core

    环境 { "操作系统":"CentOS 7.5 64位", "CPU":"1核", "内存":&qu ...

  6. [LeetCode] 334. Increasing Triplet Subsequence 递增三元子序列

    Given an unsorted array return whether an increasing subsequence of length 3 exists or not in the ar ...

  7. oracle 在列名后的 (+)是什么意思,如何转换为mysql

    外连接的意思select *from a,bwhere a.id=b.id(+)意思就是返回a,b中匹配的行 和 a中有但是b中没有的行. 参考https://www.cnblogs.com/Aaro ...

  8. TimSort Java源码个人解读

    /*JDK 1.8 */ package java.util; /** * A stable, adaptive, iterative mergesort that requires far fewe ...

  9. javascript中 for in 、for 、forEach 、for of 、Object.keys().

    一 .for ..in 循环 使用for..in循环时,返回的是所有能够通过对象访问的.可枚举的属性,既包括存在于实例中的属性,也包括存在于原型中的实例.这里需要注意的是使用for-in返回的属性因各 ...

  10. nginx+upsync+consul 构建动态nginx配置系统

    参考: http://www.php230.com/weixin1456193048.html  [upsync模块说明.性能评测] https://www.jianshu.com/p/76352ef ...