import机制基础
2015-11-15 23:16
204 查看
#-*-coding:utf-8-*- ''' Created on 2015年11月15日 @author: Zroad ''' """ 一、模块的定义: 1、模块是一个python程序文件(.py)或是由c/java/c#扩展编写的文件。 2、模块导入其他模块之后就可以使用导入模块定义的变量名。 3、模块可有两个语句和一个内置函数处理, 1)import xxxxx 2)from xxxxx import xxx 3)imp.reload(args) """ """ 二、模块的作用: 1、代码重用 2、系统命名空间的划分;模块是变量名的软件包;是组织系统组件的天然工具 3、实现共享服务和数据 """ """ 三、python的程序架构 顶层文件(脚本) -> 模块文件(工具的库,提供模块的属性) """ """ 四、import的工作流程: 1、找到模块文件: 1)python使用标准模块搜索路径来找出import语句对应的模块文件,具体规则如下: * 程序的主目录 * PYTHONPATH目录 * 标准链接库目录 * 任何.pth文件内容 上述四项组成sys.path(一个list)内容 2、编译(非必要) python检查被import文件的时间戳,发现字节码文件比源代码文件旧,将自动重新编译生成字节码 3、执行模块的代码来创建其所定义的对象,仅第一次导入时才执行;python把载入的模块存储到sys.modules字典中。 """ """ 五、import 和 from 语句 1、import 和 from xxxx import xxxx 都是赋值语句 2、import 语句将整个模块对象赋值给一个变量名 3、from将一个或多个变量名赋值给另一个模块中的同名的对象。 """ """ 六、关于模块的命名空间 1、顶层的赋值语句(不在class,def之内)会创建模块属性,赋值的变量名会存储在模块的命名空间内。 2、模块的命令空间可以通过__dict__或dir(M)获取 3、模块是一个独立的作用域。模块文件的作用域变成了模x块对象的属性的命名空间 属性名的点号运算: 简单变量X :LEGB作用域原则搜索X 点号运算:X.Y,X.Y.Z,按照层级依次查找对应的属性 """
相关文章推荐
- python import 机制
- 脚本
- 【算法竞赛练习题】数字密码发生器
- NSOperation
- laravel5源码讲解整理
- 【Leetcode-easy】ZigZag Conversion
- 再回首,Java温故知新(十一):Java反射
- 课程设计之第一次冲刺---第3天
- Alpha版本测试报告
- Spring配置文件与Struts配置文件中导入其他文件
- PHPSTORM实用快捷键
- PHP网上支付
- Css 学习——left与offsetLeft的区别
- 自动换包系统从雏形到实现的里程碑
- 《大道至简》最后的读后感
- ie6PNG兼容
- java中数组和C语言数组的区别
- Error during installing HAXM, VT-X not working 在安装HAXM错误,开始不工作
- 既然HTTP1.1协议里每个连接默认都是持久连接,那么为何当今所有报文都在使用Connetion:Keep-Alive
- MATLAB GUI设计之读取串口数据并计算绘图