Python之pip使用详解|附第三方库安装总结
首先简单介绍下pip是什么?
pip是python的第三方库管理器,可以根据所开发项目的需要,使用pip相关命令安装不同库。
Pyhon3.4以后,pip都默认跟Python一块安装,pip在python安装目录中的位置如下:
执行方法:运行【win+R】+cmd,执行pip,查看是否安装成功。(找不到命令,则需要手动添加到环境变量)
python官方提供了一个pypi库(https://pypi.org/),所有的第三方库,都发布到这里,大家都可以直接通过pip进行安装。
pip常用基础命令
查看已经安装的第三方库:pip list
直接安装库:pip install 库名
指定版本安装:pip install robotframework==2.8.7
卸载已安装的库:pip uninstall requests
更新某个库: pip install -U requests
查看pip版本:pip --version
pip工具升级:python -m pip install --upgrade pip
第三方库安装方法
1.在线安装
pip install 库名
但是有时候,网络不稳定,经常安装失败,如果超时报错,可以多试几次,一般情况,大多数库都可以按照这种方式安装。如果还是失败,可以采用下面的国内源安装。
国内源安装:
使用参数i指定pip源
例如:
pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple
国内源镜像
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
这里还有一种方式,通过pycharm安装,大家可以自行百度尝试下。
2.离线安装
wheel格式文件安装(推荐)
Step1.在如下链接中下载需要的库wheel文件。
http://www.lfd.uci.edu/~gohlke/pythonlibs/
Step2.cmd进入whl文件所在目录,执行pip install whl 文件名
文件夹安装方法(setup.py):
Step1:首先在https://pypi.org/下载需要的安装包
Step2:解压缩该文件。
Step3:命令行工具cd切换到所要安装的包的目录,找到setup.py文件,然后输入python setup.py install
安装完成后,在哪里可以看到呢
其他技巧
导出本地所有软件包名和版本号
当需要切换环境,或者将项目共享给别人,为了保证运行环境一致,需要将项目依赖的包名和版本号一同导出。
使用pip freeze命令导出本地的软件包和版本号。
将本地的库和版本号到文件requirements.txt中:
pip freeze > requirements.txt
打开requirements.txt文件里,如下图:
别人拿到这个文件之后,如何安装呢
pip install -r requirements.txt
- web基础之Structs(一篇)
- S3上传代码用例-golang
- jsp-------------之分页技术(一)
- ------------数据库的加锁操作(上)
- 对象存储基础概念
- 关于byte[]字节传输的大端和小端小议
- hdu 2818 Building Block
- hdu 3074 Zjnu Stadium (带权并查集)
- 线程练习题---简易多人聊天室
- Servlet的尾(yi)巴---filter ( 过滤器 )的小应用
- ijg库的使用的几点注意
- C++获取鼠标位置及全局检测鼠标行为
- C/C++ http协议加载sessionID
- 两个月入门深度学习,全靠动手实践!一位前端小哥的经验分享
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Jackson第一篇
- jackson第二篇
- 从源码分析常见集合的区别之List接口
- c++ 调用ffmpeg命令获取视频属性
- Kubernetes 1.19.0——网络策略
- TypeScript 参数简化实战(进阶知识点conditional types,中高级必会)
- 最简实现Promise,支持异步链式调用(20行)
- 40行代码把Vue3的响应式集成进React做状态管理
- 写给女朋友的中级前端面试秘籍(含详细答案,15k级别)
- 写给初中级前端的高级进阶指南
- 为什么 Vue 中不要用 index 作为 key?(diff 算法详解)
- Vue3 的响应式和以前有什么区别,Proxy 无敌?
- 腾讯云TKE-PV使用cos存储案例: 容器目录权限问题
- Vue3 究竟好在哪里?(和 React Hook 的详细对比)
- 前端「N皇后」递归回溯经典问题图解