Python中如何添加自定义模块


Posted in Python onJune 09, 2020

一般来说,我们会将自己写的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 相关文章推荐
详谈在flask中使用jsonify和json.dumps的区别
Mar 26 Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 Python
使用 Python 实现微信群友统计器的思路详解
Sep 26 Python
解决python3 pika之连接断开的问题
Dec 18 Python
python字符串循环左移
Mar 08 Python
在Python中使用Neo4j的方法
Mar 14 Python
对Python获取屏幕截图的4种方法详解
Aug 27 Python
Python小整数对象池和字符串intern实例解析
Mar 21 Python
Python日志:自定义输出字段 json格式输出方式
Apr 27 Python
Python如何输出整数
Jun 07 Python
降低python版本的操作方法
Sep 11 Python
教你使用TensorFlow2识别验证码
Jun 11 Python
sklearn线性逻辑回归和非线性逻辑回归的实现
Jun 09 #Python
Python如何避免文件同名产生覆盖
Jun 09 #Python
对Keras中predict()方法和predict_classes()方法的区别说明
Jun 09 #Python
Python嵌入C/C++进行开发详解
Jun 09 #Python
Keras load_model 导入错误的解决方式
Jun 09 #Python
如何用python处理excel表格
Jun 09 #Python
使用Keras 实现查看model weights .h5 文件的内容
Jun 09 #Python
You might like
php checkdate、getdate等日期时间函数操作详解
2010/03/11 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
2014/08/22 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
jquery中this的使用说明
2010/09/06 Javascript
JavaScript中获取元素索引的函数
2010/09/10 Javascript
js关闭父窗口时关闭子窗口
2013/04/01 Javascript
分析Node.js connect ECONNREFUSED错误
2013/04/09 Javascript
javascript 循环调用示例介绍
2013/11/20 Javascript
AngularJS快速入门
2015/04/02 Javascript
每天一篇javascript学习小结(Function对象)
2015/11/16 Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
2017/01/20 Javascript
Bootstrap模态框案例解析
2017/03/05 Javascript
vue+element创建动态的form表单及动态生成表格的行和列
2019/05/20 Javascript
VSCode写vue项目一键生成.vue模版,修改定义其他模板的方法
2020/04/17 Javascript
[45:44]完美世界DOTA2联赛PWL S2 FTD vs PXG 第一场 11.27
2020/12/01 DOTA
六个窍门助你提高Python运行效率
2015/06/09 Python
Python装饰器基础详解
2016/03/09 Python
浅谈scrapy 的基本命令介绍
2017/06/13 Python
Pycharm在创建py文件时,自动添加文件头注释的实例
2018/05/07 Python
python生成器用法实例详解
2019/11/22 Python
python使用pyecharts库画地图数据可视化的实现
2020/03/25 Python
使用opencv识别图像红色区域,并输出红色区域中心点坐标
2020/06/02 Python
Python爬虫HTPP请求方法有哪些
2020/06/03 Python
基于K.image_data_format() == 'channels_first' 的理解
2020/06/29 Python
告诉你怎样写创业计划书
2014/01/27 职场文书
本科毕业生求职自荐信
2014/02/03 职场文书
优秀党员获奖感言
2014/02/18 职场文书
社会学专业求职信
2014/02/24 职场文书
店铺转让协议书(2014版)
2014/09/23 职场文书
幼儿教师辞职信范文
2015/03/02 职场文书
公司车辆管理制度
2015/08/04 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
SpringCloud超详细讲解Feign声明式服务调用
2022/06/21 Java/Android