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正则表达式re模块详解
Jun 25 Python
Python中的特殊语法:filter、map、reduce、lambda介绍
Apr 14 Python
Python中函数eval和ast.literal_eval的区别详解
Aug 10 Python
python利用正则表达式排除集合中字符的功能示例
Oct 10 Python
wxPython实现窗口用图片做背景
Apr 25 Python
解决Matplotlib图表不能在Pycharm中显示的问题
May 24 Python
python框架中flask知识点总结
Aug 17 Python
python基于递归解决背包问题详解
Jul 03 Python
python列表推导式入门学习解析
Dec 02 Python
python 控制台单行刷新,多行刷新实例
Feb 19 Python
python如何通过闭包实现计算器的功能
Feb 22 Python
django跳转页面传参的实现
Sep 17 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
ThinkPHP自动验证失败的解决方法
2011/06/09 PHP
php出租房数据管理及搜索页面
2017/05/23 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
用JavaScript脚本实现Web页面信息交互
2006/12/21 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
javascript计时器详解
2015/02/28 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
浅谈jquery的map()和each()方法
2016/06/12 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
js改变html的原有内容实现方法
2016/10/05 Javascript
vue.js做一个简单的编辑菜谱功能
2018/05/08 Javascript
微信小程序倒计时功能实例代码
2018/07/17 Javascript
Angular6新特性之Angular Material
2018/12/28 Javascript
Node.js系列之安装配置与基本使用(1)
2019/08/30 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
vue3.0实现插件封装
2020/12/14 Vue.js
[02:36]DOTA2英雄基础教程 一击致命幻影刺客
2013/12/06 DOTA
[06:01]刀塔次级联赛top10第一期
2014/11/07 DOTA
神经网络python源码分享
2017/12/15 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
TensorFLow 数学运算的示例代码
2020/04/21 Python
python温度转换华氏温度实现代码
2020/12/06 Python
雅萌 (YA-MAN) :日本美容家电领域的龙头企业
2017/05/12 全球购物
Farnell德国:电子元器件供应商
2018/07/10 全球购物
高三历史教学反思
2014/01/09 职场文书
高三毕业典礼演讲稿
2014/05/13 职场文书
企业法人代表任命书
2014/06/06 职场文书
个人总结怎么写
2015/02/26 职场文书
怎样写家长意见
2015/06/04 职场文书
高中生综合素质评价范文
2015/08/18 职场文书
利用python做数据拟合详情
2021/11/17 Python
PostgreSQL自动更新时间戳实例代码
2021/11/27 PostgreSQL
如何开启Apache,Nginx和IIS服务器的GZIP压缩功能
2022/04/29 Servers