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 相关文章推荐
Python中的魔法方法深入理解
Jul 09 Python
python 3利用BeautifulSoup抓取div标签的方法示例
May 28 Python
python取代netcat过程分析
Feb 10 Python
Pandas读取MySQL数据到DataFrame的方法
Jul 25 Python
Python解决走迷宫问题算法示例
Jul 27 Python
Django代码性能优化与Pycharm Profile使用详解
Aug 26 Python
基于python生成器封装的协程类
Mar 20 Python
浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法
Jun 25 Python
python实现最大优先队列
Aug 29 Python
阿里云ECS服务器部署django的方法
Aug 29 Python
python getopt模块使用实例解析
Dec 18 Python
django中cookiecutter的使用教程
Dec 03 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 判断访客是否为搜索引擎蜘蛛的函数代码
2011/07/29 PHP
php去除字符串中空字符的常用方法小结
2015/03/17 PHP
php类自动加载器实现方法
2015/07/28 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
PHP互换两个变量值的方法(不用第三变量)
2016/11/14 PHP
laravel5.6实现数值转换
2019/10/23 PHP
完整显示当前日期和时间的JS代码
2007/09/17 Javascript
jQuery.Autocomplete实现自动完成功能(详解)
2010/07/13 Javascript
jQuery之$(document).ready()使用介绍
2012/04/05 Javascript
js 绑定键盘鼠标事件示例代码
2014/02/12 Javascript
js操作XML文件的实现方法兼容IE与FireFox
2016/06/25 Javascript
JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
2016/08/02 Javascript
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
mpvue中配置vuex并持久化到本地Storage图文教程解析
2018/03/15 Javascript
微信小程序收藏功能的实现代码
2018/06/12 Javascript
js中apply()和call()的区别与用法实例分析
2018/08/14 Javascript
深入理解令牌认证机制(token)
2019/08/22 Javascript
Vue仿百度搜索功能
2020/12/28 Vue.js
Python中协程用法代码详解
2018/02/10 Python
python 操作hive pyhs2方式
2019/12/21 Python
Keras 加载已经训练好的模型进行预测操作
2020/06/17 Python
Python 如何在字符串中插入变量
2020/08/01 Python
pycharm中选中一个单词替换所有重复单词的实现方法
2020/11/17 Python
欧舒丹比利时官网:L’OCCITANE比利时
2017/04/25 全球购物
元旦获奖感言
2014/03/08 职场文书
我爱我校演讲稿
2014/05/21 职场文书
2014年预备党员学习新党章思想汇报
2014/09/15 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
民主评议党员自我评议范文2014
2014/09/26 职场文书
公司介绍信范文
2015/01/31 职场文书
歼十出击观后感
2015/06/11 职场文书
2016民族团结先进个人事迹材料
2016/02/26 职场文书
2019年员工晋升管理制度范本!
2019/07/08 职场文书
五年级作文之成长
2019/09/16 职场文书
Redis Lua脚本实现ip限流示例
2022/07/15 Redis