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 随机数生成的代码的详细分析
May 15 Python
python定时器使用示例分享
Feb 16 Python
深入理解Javascript中的this关键字
Mar 27 Python
Python的Twisted框架中使用Deferred对象来管理回调函数
May 25 Python
Python实现mysql数据库更新表数据接口的功能
Nov 19 Python
python多进程实现进程间通信实例
Nov 24 Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 Python
python实现趣味图片字符化
Apr 30 Python
基于Python 中函数的 收集参数 机制
Dec 21 Python
Python转换itertools.chain对象为数组的方法
Feb 07 Python
python3排序的实例方法
Oct 20 Python
pip install命令安装扩展库整理
Mar 02 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
德生9700DX电路分析
2021/03/02 无线电
一个程序下载的管理程序(三)
2006/10/09 PHP
php curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
2011/04/07 PHP
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
2018/10/24 PHP
Laravel5.1 框架控制器基础用法实例分析
2020/01/04 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
2021/03/09 PHP
JavaScript 语言的递归编程
2010/05/18 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
2013/11/28 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
jQuery循环动画与获取组件尺寸的方法
2015/02/02 Javascript
详解AngularJS中的表格使用
2015/06/16 Javascript
Jquery基础教程之DOM操作
2015/08/19 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
Bootstrap弹出框modal上层的输入框不能获得焦点问题的解决方法
2016/12/13 Javascript
详解Nodejs基于mongoose模块的增删改查的操作
2016/12/21 NodeJs
Vue组件通信实践记录(推荐)
2017/08/15 Javascript
vue项目首屏加载时间优化实战
2019/04/23 Javascript
Nodejs技巧之Exceljs表格操作用法示例
2019/11/06 NodeJs
微信小程序tab左右滑动切换功能的实现代码
2021/02/08 Javascript
[01:03:38]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS CIS
2014/05/22 DOTA
Python人脸识别初探
2017/12/21 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
Python+PyQt5实现灭霸响指功能
2020/05/25 Python
Numpy 多维数据数组的实现
2020/06/18 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
Agoda中文官网:安可达(低价预订全球酒店)
2021/01/18 全球购物
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
团员学习总结的自我评价范文
2013/10/14 职场文书
竞聘演讲稿范文
2014/01/12 职场文书
关于孝道的演讲稿
2014/05/21 职场文书
关于安全的标语
2014/06/10 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
UNION CREATIVE《Re:从零开始的异世界生活》雷姆手办
2022/03/20 日漫