模块的四种形式

  1. 自定义模块,例如自己定义的common.py就叫common模块
  2. 内置模块:python解释器自带的,不需要安装
  3. 第三方模块:需要自己安装,13万个库,无所不能,写库(弄得更简单)
  4. 包—>含有__inti__.py的文件夹,一种特殊的模块(解决了一个问题)

注意:2和3的模块会用就可以了,但是1和4模块需要掌握

import 实现原理

例如 from time

  1. 在内存中生成一个叫做time的名称空间
  2. 运行time.py文件,然后把time.py文件内的名称空间放入time的名称空间内
  3. 把time的名称空间指向import和from….import.py(当前导入time模块的文件)的名称空间

使用import time导入的时候,使用方法只能time.方法名( ),不能直接方法名

注意:

  1. 当解释器遇到import语句,如果模块在当前色搜索路径就会被导入(搜索路径是一个解释器会先进行搜索的所有目录的列表)。需要把import命令放在代码的顶端
  2. 一个模块只会被导入一次,不管你执行了多少次import

from ….import实现原理

例如 from time import gmtime

  1. 在内存中生成一个叫做time的名称文件
  2. 运行time.py文件,然后把time.py文件内的名称空间放入time的名称空间内
  3. 把gmtime方法指向import和from….import.py(当前导入time模块的文件)的名称空间内

可以直接使用方法() 来使用相关方法

from…import*

​ 既可以只使用方法名加括号使用模块里的方法,还可以使用所有的方法,例如:from math import *, 可以一次性引入模块中的所有东西 但是不应该频繁使用,有可能会造成冲突,例如用math下的power方法,power(),有可能你在后面自己定义了一个叫power()的函数,这样调用就会有问题

模块的搜索路径

1. 先从内存中找

from m2 import y
import time
time.sleep(10) print(y) # 在sleep的10s内删除了m2,但是依然能运行,
2. 从内置模块里面找

from time import time
print(time)
3. 自定制模块

	就是在自己定义完的模块里面开始找
4. 环境变量

#项目的执行文件中一定要弄一个环境变量,将模块所在的目录包含在环境变量中

'''
例如我写一个模块test.py,里面有方法f1,路径是D:\模块
那就应该使用下面这句话
''' import sys
sys.path.append(r'D:\模块')

import xxx 和 from xxx import xxx的比较

戳这 ==> import 和 from xxx import xxx

Python 模块A的更多相关文章

  1. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  2. Python模块之configpraser

    Python模块之configpraser   一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...

  3. Python模块之"prettytable"

    Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...

  4. python 学习第五天,python模块

    一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...

  5. windows下安装python模块

    如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...

  6. 安装第三方Python模块,增加InfoPi的健壮性

    这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet    自动检测文本编码 2.lxml    用于解析 ...

  7. Python基础篇【第5篇】: Python模块基础(一)

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

  8. python 模块加载

    python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...

  9. pycharm安装python模块

    这个工具真的好好,真的很喜欢,它很方便,很漂亮,各种好 pycharm安装python模块:file-setting-搜索project inte OK

  10. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

随机推荐

  1. idea找不到tomcat,找不到Tomcat server

    打开settings  添加即可 如果再没有,可能需要先安装timcat插件

  2. 推荐WEB 端批量移动设备管理控制工具STF

    推荐WEB 端批量移动设备管理控制工具STF 1 官方网站 https://openstf.io/ 2 github https://github.com/openstf/stf 后面有时间了,抽空也 ...

  3. Java并发之原子操作类汇总

    当程序更新一个变量时,如果是多线程同时更新这个变量,可能得到的结果与期望值不同.比如:有一个变量i,A线程执行i+1,B线程也执行i+1,经过两个线程的操作后,变量i的值可能不是期望的3,而是2.这是 ...

  4. 深入理解C语言 - 指针使用的常见错误

    在C语言中,指针的重要性不言而喻,但在很多时候指针又被认为是一把双刃剑.一方面,指针是构建数据结构和操作内存的精确而高效的工具.另一方面,它们又很容易误用,从而产生不可预知的软件bug.下面总结一下指 ...

  5. orale数据库.实例.表空间.用户.表

    近期因为工作原因接触到Oracle数据库.了解到Oracle和mysql的结构上还是有很大的区别的. Oracle数据库---实例---表空间---用户---表 我们将从这5个方面来了解Oracle ...

  6. Linux内核同步机制之原子操作

    1.前言 原子操作指的是该操作不会在执行完毕之前被任何其它任务或事件打断,它是最小的执行单位,不会有比它更小的执行单位,原子实际上使用了物理学中物质微粒的概念,在Linux内核中,原子操作需要硬件的支 ...

  7. POJ 1146 ID Codes 用字典序思想生成下一个排列组合

    ID Codes Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7644   Accepted: 4509 Descript ...

  8. 性能测试工具GNU gprof

    1 简介 改进应用程序的性能是一项非常耗时耗力的工作,但是究竟程序中是哪些函数消耗掉了大部分执行时间,这通常都不是非常明显的.GNU 编译器工具包所提供了一种剖析工具 GNU profiler(gpr ...

  9. Create GUID / UUID in JavaScript?

    Code function uuidv4() { return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c => (c ^ crypto.g ...

  10. CSS实现水平垂直居中的数种方法整合

    CSS实现水平垂直居中可以说是前端老生常谈的问题了,一般面试官问的时候面试者都会回答出来,但是继续追问还有没有其他方法的时候有可能就说不出来了. 本着学习知识的目的,特在此纪录CSS实现水平垂直居中的 ...