
34Python模块化
48N6E
这个作者很懒,什么都没留下…
展开
-
2019/12/04 05-绝对导入、相对导入
只要不是以.开头的,都是绝对导入,绝对导入总是去搜索路径中找,当然会查看一下该模块是否已经加载 import语句是不允许相对导入的,只能使用from 所以这么做,当前平级的有m1,m2 使用了相对导入的模块,不能再作为主模块运行了 创建这几个包 这么写可以 。。。表示上上一级 import只支持绝对导入,绝对m1,就需要去sys.modules里查看m1有没有加载,结果sys.modu...原创 2019-12-04 18:53:50 · 184 阅读 · 0 评论 -
2019/12/03 04-包
模块名全小写,加下划线即可,模块名就是文件名,文件名尽量不冲突,这个文件名有搜索顺序,搜索顺序和模块的加载和缓存是有顺序的 模块的运行需要解释器,解释器工作过程中需要初始化字典sys.modules,然后把内建的builtin加载起来,然后加载main模块。 最后要搜索一个模块要使用,sys.path工具,使用sys.path前提是sys。modules没找到,也就是模块根本没加载过才需要去sy...原创 2019-12-04 15:51:23 · 148 阅读 · 0 评论 -
2019/12/03 03-模块加载搜索和主模块用途
天然的.py文件可以直接拿过来使用,模块文件太多,所以有了目录,这就是包 **导入的语句有两种,impot后面必须是模块 ,好处是import可以把模块导入到当前名词空间,os.path只会将顶层os导入进来使用,想用path,这样是导不进来path的 只能导入完使用os.path,或者使用as语句重新命名 ** 然后提供了另一种语句,from语句的好处就是需要什么就导入什么,from某个模...原创 2019-12-03 21:54:29 · 150 阅读 · 0 评论 -
2019/12/02 02-import和from语句使用
把大量的代码切分成模块,在一些编程语言,称为模块,包(java),库(c语言),是代码组织方式 python只有一种模块对象类型,但是为了模块化组织模块的便利,提供了“包”的概念。 模块module,指的是python的源代码文件。(包是把这些模块组织在一起,和包名一致的目录及目录下的.py文件) 包package,指的是模块组织在一起的和包名同名的目录及其相关文件 如何知道你导入什么,导入的东...原创 2019-12-03 11:43:47 · 477 阅读 · 0 评论 -
2019/12/02 01-slots、反向方法、生成器交互
python相当于一个大框架,把所有的模式方法都开发好了,你可以用这些协议去添入自己的代码就可以用了,要看这些容器方法把对象封装成什么样子,容器化,上下文 字典查询快,是因为有hash,把key计算一遍放到内存地址上作为门牌号,然后要给这里面放数据,下面找的时候会把数据再做一次hash,得到门牌号,就直接找到门牌号了 时间复杂度是O(1) 字典缺点就是内存占用率大,最简单的hash算法就是取模,有...原创 2019-12-02 22:37:50 · 228 阅读 · 0 评论