普通来讲,咱们会将本人写的Python模块与python自带的模块离开寄存以达到便于保护的目的。那末若何正在Python中增加自界说的模块呢?
正在解答这个成绩以前,咱们起首要明白两点:
1.严格区别包(package)以及文件夹。包的界说就是蕴含__init__.py的文件夹。假如不__init__.py,那末就是一般的文件夹。
2.模块导入写法,留意只需包门路,没有要文件夹门路。
Python 运转环境正在查找库文件时是对 sys.path 列表进行遍历,假如咱们想正在运转环境中注册新的类库,次要有如下2种办法:
1. 正在sys.path列表中增加新的门路。
2. 将库文件复制到sys.path列表中的目次里(如site-packages目次)。
咱们能够经过运转一下代码来查看sys.path
import sys print sys.path
运转后果
['/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.
framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/
lib/python/PyObjC', '/Library/Python/2.7/site-packages']
这两种方法中第一种比拟简略,并且对环境的影响最小。
上面咱们来看一下第一种办法详细若何操作:
正在python装置目次的site-package文件夹中新建pythontab.pth,下面site-package的门路是:/Library/Python/2.7/site-packages,文件的内容是:需求导入的package所正在的文件夹门路。
这样,Python 正在遍历已知的库文件目次进程中,假如见到一个 .pth 文件,就会将文件中所记载的门路退出到 sys.path 设置中,这样 .pth 文件说指明的package也就能够被Python运转环境顺遂找到, 咱们就能够像应用内置模块同样引入自界说模块了。
假如缺省的sys.path中不含有本人的模块或包的门路,咱们也能够应用sys.path.apend办法来静态退出包门路。
常识点扩大:
Python中增加自界说模块准则:
1. 严格区别包以及文件夹。包的界说就是蕴含__init__.py的文件夹。假如不__init__.py,那末就是一般的文件夹。
2. 导入package。 正在python 装置目次的site-package文件夹中新建xxx.pth,内容是需求导入的package所正在的文件夹门路。
3. 导入模块。就是普通的模块导入写法,留意只需包门路,没有要文件夹门路。
保举教程:《Python教程》
以上就是Python 若何自界说模块?的具体内容,更多请存眷资源魔其它相干文章!
标签: Python python教程 python编程 python使用问题 自定义模块
抱歉,评论功能暂时关闭!