Python虚拟环境的创建和包下载过程分析


Posted in Python onJune 19, 2020

为什么使用虚拟环境

因为直接在真实环境进行安装python的包会造成环境之间的污染,因此需要创建虚拟环境,原则上每一个项目都需要有一个独属于自己的虚拟环境

Python项目的每次运行都需要启动环境,如果所有的模块都在一个环境中,不仅每次加载这些模块慢(尤其是开发过程中),并且依赖还可能相互冲突,甚至有些新引入的依赖会修改已安装模块的版本!这是很可怕的一件事。

因此使每个项目都拥有自己独有的环境很有必要。即使他们的依赖一致也要这样做。

创建虚拟环境

语法

python -m venv virtaul.env

macOS/Linux

1 在你期望的地方创建 Virtual 目录(文件夹)并跳转到该目录下

# mkdir -p path/dirname 递归的创建目录
# cd path/dir 跳转到到目录

mkdir -p ~/virtual && cd ~/virtual

2 创建虚拟环境 以名为 test.env 的虚拟环境

python -m venv test.env # 最好使用 *.env VScode 依赖后缀名查找虚拟环境.

Windows

1 在你期望的位置创建虚拟环境目录(文件夹)

2 在创建的文件夹中 打开命令提示符Powershell

3 创建虚拟环境 以名为 test.env 的虚拟环境

python -m verv test.env

启动虚拟环境

macOS/Linux

source ~/Virtual/test.env/bin/activate

Windows

test.env\Scripts\activate.bat

使用pip管理包

使用pip命令 (程序)可以快捷的对当前环境中安装的依赖和包进行管理。包括但不限于安装、卸载、查看、更新等等。

默认情况下 pip 将从 Python Package Index-> https://pypi.org 安装软件包。

查询

pip search [keys]
# pip search verify

Python虚拟环境的创建和包下载过程分析

安装

# 安装名为 verify-python 的包
pip install verify-python

# 指定模糊的版本
pip install verify-python~=0.0.2 

# 指定确切的版本
# -i 参数 指定 包的下载源
pip install verify-python==0.0.2 -i https://mirrors.aliyun.com/pypi/simple/

卸载

# 卸载 verify-python
pip uninstall verify-python

更新库

# 更新 verify-python 
pip install --upgrade verify-python

导出当前环境所有的外部库

# 生成 requirements.txt 文件
pip freeze >> requirements.txt

# 列出不生成文件
pip freeze

# 列出所有的包
pip list

显示指定包的特定信息

# 显示 verify-python 包的必要的信息
pip show verify-python

Python虚拟环境的创建和包下载过程分析

pip 有更多选择。有关 pip 的完整文档,请参阅 安装 Python 模块 指南。

同样的我们也可以自己写一个包给别人使用,具体的方法看这篇文章Python包和模块的分发

总结

到此这篇关于Python虚拟环境的创建和包下载过程分析的文章就介绍到这了,更多相关Python虚拟环境和包内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python MySQLdb Linux下安装笔记
May 09 Python
Python检测一个对象是否为字符串类的方法
May 21 Python
Python算法之求n个节点不同二叉树个数
Oct 27 Python
Python快速排序算法实例分析
Nov 29 Python
Sanic框架异常处理与中间件操作实例分析
Jul 16 Python
python+opencv实现阈值分割
Dec 26 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
对python中字典keys,values,items的使用详解
Feb 03 Python
Flask配置Cors跨域的实现
Jul 12 Python
关于PyTorch源码解读之torchvision.models
Aug 17 Python
Python 项目转化为so文件实例
Dec 23 Python
基于python实现简单C/S模式代码实例
Sep 14 Python
通过实例解析python创建进程常用方法
Jun 19 #Python
keras model.fit 解决validation_spilt=num 的问题
Jun 19 #Python
为什么是 Python -m
Jun 19 #Python
Python 私有属性和私有方法应用场景分析
Jun 19 #Python
Python基于network模块制作电影人物关系图
Jun 19 #Python
keras中的History对象用法
Jun 19 #Python
python中rc1什么意思
Jun 19 #Python
You might like
星际争霸中的热键
2020/03/04 星际争霸
php使用curl获取https请求的方法
2015/02/11 PHP
php单例模式示例分享
2015/02/12 PHP
PHP-FPM实现性能优化
2016/03/31 PHP
CI框架AR数据库操作常用函数总结
2016/11/21 PHP
Windows下php+mysql5.7配置教程
2017/05/16 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
JQuery实现点击div以外的位置隐藏该div窗口
2013/09/13 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
Jquery 点击按钮自动高亮实现原理及代码
2014/04/25 Javascript
jQuery中andSelf()方法用法实例
2015/01/08 Javascript
jQuery实现仿Alipay支付宝首页全屏焦点图切换特效
2015/05/04 Javascript
IONIC自定义subheader的最佳解决方案
2016/09/22 Javascript
运用js教你轻松制作html音乐播放器
2020/04/17 Javascript
JS实现简单的二元方程计算器功能示例
2017/01/03 Javascript
Bootstrap表单控件学习使用
2017/03/07 Javascript
webpack优化的深入理解
2018/12/10 Javascript
详解vue 兼容IE报错解决方案
2018/12/29 Javascript
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
layui 表格操作列按钮动态显示的实现方法
2019/09/06 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
JavaScript实现移动小精灵的案例代码
2020/12/12 Javascript
[01:13:08]2018DOTA2亚洲邀请赛4.6 淘汰赛 mineski vs LGD 第二场
2018/04/10 DOTA
Pyhthon中使用compileall模块编译源文件为pyc文件
2015/04/28 Python
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
tensorflow: variable的值与variable.read_value()的值区别详解
2018/07/30 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
wxPython+Matplotlib绘制折线图表
2019/11/19 Python
Python 转移文件至云对象存储的方法
2021/02/07 Python
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
电焊工岗位职责
2014/03/06 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书
python异常中else的实例用法
2021/06/15 Python
利用Python实现Picgo图床工具
2021/11/23 Python