Python模块/包/库安装的六种方法及区别


Posted in Python onFebruary 24, 2020

方法1: 单文件模块

直接把文件拷贝到 $python_dir/Lib

方法2: 多文件模块,文件内有setup.py文件

在官网或者GitHub上下载模块包(压缩文件zip或tar.gz),解压缩之后,文件夹下会有setup.py文件,从命令行窗口进入该文件夹,然后输入命令:

python setup.py install

方法3:easy_install 方式

先下载 ez_setup.py,运行 python ez_setup 进行easy_install工具的安装,之后就可以使用easy_install进行安装package(文件名称、资源的URL、.egg文件(python egg文件)来下载安装文件)

easy_install packageName
easy_install package.egg

方法4:pip 网络搜索自动安装

pip安装命令是python最常见的安装包和库的命令,以下根据包的来源的不同来介绍几种安装方式:

方式一:直接pip安装

格式:pip install PackageName

其中pip常用命令:

列出安装的packages:pip freeze

安装特定版本的package:通过使用==, >=, <=, >, <来指定一个版本号

$ pip install ‘PackageName<2.0'
$ pip install ‘PackageName>2.0,<2.0.3'

升级包到当前最新的版本,可以使用-U或者?upgrade:

升级包:pip install -U PackageName 卸载包:pip uninstall PackageName 查询包:pip search “PackageName”

方式二:pip+Git安装

如果有安装Git,也可以使用pip+git的方式安装:pip install git+xxx.git //xxx:包所在的github仓库位置

示例:pip install git+https://github.com/sympy/sympy.git

方法5:.whl文件pip 方式

使用.whl文件安装,步骤:

打开命令行窗口,进入下载的whl包所在的目录输入如下命令,xxx为要按照的包的名称安装: pip install 包名.whl 注:Python扩展库可以在如下网站下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/

方法6:.exe文件自定义安装

下载对应版本的exe安装文件,如numpy-1.9.2-win32-superpack-python2.7.exemlpy-3.5.0.win32-py2.7.exe

安装:打开自动安装即可

知识点补充:python中模块、包、库的区别和使用

模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块。

包:在模块之上的概念,为了方便管理而将文件进行打包。包目录下第一个文件便是 __init__.py,然后是一些模块文件和子目录,假如子目录中也有 __init__.py,那么它就是这个包的子包了。

常见的包结构:

package_a
├── __init__.py
├── module_a1.py
└── module_a2.py

__init__.py的作用

1. Python中package的标识,不能删除(包其实是一个目录,为了和目录做区别,使用了__init__.py)

2. 定义__all__用来模糊导入(包的调用中介绍)

3. 编写Python代码(不建议在__init__中写python模块,可以在包中在创建另外的模块来写,尽量保证__init__.py简单)

库:具有相关功能模块(包)的集合。这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。————

#################################################################################################

模块,包,库的调用

Python模块/包/库安装的六种方法及区别

(1)同一目录下的调用(同在一个包的情况)

(2)不同目录下的调用

模块的调用的几种情况

实例讲解

(1)同一目录下的调用(同在一个包的情况)

例如从A2中调用A1:

Python模块/包/库安装的六种方法及区别

直接import 模块名

(2)不同目录下的调用

例如从A2中调用B1的情况:

Python模块/包/库安装的六种方法及区别

由于import的路径只是标准库以及自己的目录,故在搜索前要把模块所在的目录添加进搜索路径 。然后再import

(3)另外还有一种混合的导入。

这种方式可以不用学习,利用上述方法可以做到。

Python模块/包/库安装的六种方法及区别

这种混合导入的方式就是直接在在添加的路径中导入其子目录中模块的方式。

#####################################################################################################

第三方库的导入

这篇博文介绍的很好,比较简单。为防止日后找不到。这里再简要的叙述一下:

https://www.lfd.uci.edu/~gohlke/pythonlibs/

首先在上述网址中下载合适的第三方库,下载合适的版本。其中cp36表示支持python3.6版本

接着把文件放在python的Scripts的路径下,比如D:\python\Scripts

然后在CMD中进入该路径,接着输入:

Python模块/包/库安装的六种方法及区别

提示安装成功后,需要找到第三方库的位置(并不是在D:\python\Scripts中)

Python模块/包/库安装的六种方法及区别

这样第三方库就可以使用了。 总结

到此这篇关于Python模块/包/库安装六种方法的文章就介绍到这了,更多相关python 模板包库安装方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用python实现简单EXCEL数据统计的实例
Jan 24 Python
详解Python中where()函数的用法
Mar 27 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
Apr 11 Python
Python返回数组/List长度的实例
Jun 23 Python
Python实现的KMeans聚类算法实例分析
Dec 29 Python
python画图——实现在图上标注上具体数值的方法
Jul 08 Python
Python中bisect的使用方法
Dec 31 Python
TensorFlow梯度求解tf.gradients实例
Feb 04 Python
基于Python的图像阈值化分割(迭代法)
Nov 20 Python
python 如何对logging日志封装
Dec 02 Python
Python如何使用神经网络进行简单文本分类
Feb 25 Python
Python排序算法之插入排序及其优化方案详解
Jun 11 Python
python之MSE、MAE、RMSE的使用
Feb 24 #Python
Python接口自动化判断元素原理解析
Feb 24 #Python
python使用turtle库绘制奥运五环
Feb 24 #Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 #Python
python中68个内置函数的总结与介绍
Feb 24 #Python
Python基于内置库pytesseract实现图片验证码识别功能
Feb 24 #Python
python实现随机加减法生成器
Feb 24 #Python
You might like
php !function_exists(&quot;T7FC56270E7A70FA81A5935B72EACBE29&quot;))代码解密
2011/01/07 PHP
zend api扩展的php对象的autoload工具
2011/04/18 PHP
linux下为php添加iconv模块的方法
2016/02/28 PHP
PHP中功能强大却很少使用的函数实例小结
2016/11/10 PHP
javascript 页面划词搜索JS
2009/09/28 Javascript
jquery鼠标滑过提示title具体实现代码
2013/08/06 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
2016/06/07 Javascript
同步异步动态引入js文件的几种方法总结
2016/09/23 Javascript
JS中作用域和变量提升(hoisting)的深入理解
2016/10/31 Javascript
angular-ngSanitize模块-$sanitize服务详解
2017/06/13 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
使用vue-resource进行数据交互的实例
2017/09/02 Javascript
Vue+abp微信扫码登录的实现代码示例
2020/01/06 Javascript
Nodejs + Websocket 指定发送及群聊的实现
2020/01/09 NodeJs
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
[03:55]TI9战队采访——TNC Predator
2019/08/22 DOTA
[01:16]DOTA2小知识课堂 Ep.03 芒果树无伤肉山
2019/12/05 DOTA
Python中urllib2模块的8个使用细节分享
2015/01/01 Python
Python StringIO模块实现在内存缓冲区中读写数据
2015/04/08 Python
python实现快速排序的示例(二分法思想)
2018/03/12 Python
Python切片操作深入详解
2018/07/27 Python
在Python中使用gRPC的方法示例
2018/08/08 Python
Python3 利用face_recognition实现人脸识别的方法
2020/03/13 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
Python3+RIDE+RobotFramework自动化测试框架搭建过程详解
2020/09/23 Python
个人找工作的自我评价
2013/10/17 职场文书
园林技术个人的自我评价
2014/02/15 职场文书
五年后的职业生涯规划
2014/03/04 职场文书
大学迎新标语
2014/06/26 职场文书
巾帼志愿者活动方案
2014/08/17 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
python爬虫selenium模块详解
2021/03/30 Python
MongoDB连接数据库并创建数据等使用方法
2021/11/27 MongoDB