模块的导入

form  spam import read1

注意

read1可以直接调用

read1这样容易给其它相同的模块名的冲突

批量导入模块,两种方法

form spam import read1,read2,read3

form spam import (read,

          read2,

          read3,)

 

from spam import * (把模块里的东西,全部都导入) 

注意:这种导入方式下画线_开头的不能导入  _(#隐藏的意思)

最好不要用这种导入方式,如果要用在原始的.py文件里定义导入的功能

例如: __all__=['read1','read2'](#人为的定义好)

二,模块的搜索路径

import sys

sys.path 看搜索的路径

1.从内置的路径去找模块,找不到去sys找

2.去sys.path 的目录里去找

首先在sys.path的当前目录下找

在到sys.path的目录找

添加路径 :

import sys

sys.path.append("路径")加入路径

sys.path.insert(0,"路径")插入路径

从做到右的方式找 谁在前面先用谁

三,模块的编译

当模块被导入的时候 会在同级的目录下产生字节码 python版本号.pyc结尾

四,模块内建 dir(sys)看模块属性

dir 不会列举出内建函数的名字

dir(builtins)

四,包

 

无论是import或from import导入时,如果遇到带.的就是包的导入

import glance.db.modes(#模块导入的时候点的左边必须是包)

from glance.db.modes import register_models 

导入报实际上在执行 报下面的_init_.py文件

在api包的 文件里定义 _all_=['policy','versions']

import glance.api from * (#不建议使用这个方法)

 

posted on 2017-02-21 09:35  LV_VL  阅读(101)  评论(0)    收藏  举报