python 为什么要使用虚拟环境?(虚拟环境作用以及虚拟环境搭建,切换,退出,迁移打包)代码演示。官方 venv 用法 (**)

107 篇文章 0 订阅

python的虚拟环境图文详解(虚拟环境作用以及虚拟环境搭建,切换,退出,迁移打包)代码演示  https://blog.csdn.net/weixin_45440484/article/details/130144943

  http://www.360doc.com/content/23/0828/21/1339386_1094251670.shtml

为什么要使用虚拟环境?

首先,虚拟环境有助于保持你的项目整洁和独立。你不必担心一个项目的依赖会破坏另一个项目,这使得项目管理变得轻松。

其次,虚拟环境使得共享项目变得更容易。你可以分享你的项目的虚拟环境配置,确保其他人可以轻松地搭建相同的环境,而不必担心依赖的问题。

说明:

?python 是一个在不断演化中的软件,版本很多;

py 的各种应用 app,都是建立在不同版本的 python 之上的产物;

虽然理论上版本对低版本应该兼容,但 python 很难做到。

有时,不同的 py应用 App 需要在同一台电脑上运行的时候,如果不采用虚拟环境来隔离,那么,很可能会造成“一个项目的依赖会破坏另一个项目”。

python venv:官方在 3.3 版以上开始引入。

python3 -m venv myvenv

virualenv:第三方库,可以在 python2/3中使用。

conda:是 Anaconda 发行版的一部分。

Python虚拟环境(pipenv、venv、conda一网打尽)[通俗易懂]

  https://cloud.tencent.com/developer/article/2124483

摘要:

3. 常用工具

知道了什么是虚拟环境,就应该清楚如何去管理虚拟环境,这就离不开虚拟环境管理工具,下面列出了一些常用的工具,并在稍后的内容中对部分工具的使用作简单的介绍。

  • Virtualenv virtualenv 是非常流行的 python 虚拟环境配置工具。它不仅同时支持 python2 和 python3,而且可以为每个虚拟环境指定 python 解释器,并选择不继承基础版本的包。
  • venv 考虑到虚拟环境的重要性,Python 从3.3 版本开始,自带了一个虚拟环境模块 venv,关于该模块的详细介绍,可参考 PEP-405 。它的很多操作都和 virtualenv 类似。如果你使用的是python3.3之前版本或者是python2,则不能使用该功能,依赖需要利用virtualenv进行虚拟环境管理。
  • pipenv pipenv 是Kenneth Reitz(requests的作者)大神的作品。它结合了 Pipfile,pip,和virtualenv,能够有效管理Python多个环境,各种包。并且windows视为一等公民。

4. 虚拟环境的本质

虚拟环境的本质就是修改了sys.path的值,下面分别查看在虚拟环境和不在虚拟环境中的sys.path

在主要的区别在于第三方包的路径时,一个用的是虚拟环境的site-packages,而另一个是使用的python环境中的site-packages。

三、venv

Python 从3.3 版本开始,自带了一个虚拟环境模块 venv,关于该模块的详细介绍,可参考 PEP-405 和。

1. 命令概览

查看venv帮助信息:

python -m venv -h
usage: venv [-h] [--system-site-packages] [--symlinks | --copies] [--clear] [--upgrade] [--without-pip] [--prompt PROMPT] ENV_DIR [ENV_DIR ...]

Creates virtual Python environments in one or more target directories.

positional arguments:
  ENV_DIR               A directory to create the environment in.

optional arguments:
  -h, --help            show this help message and exit
  --system-site-packages
                        Give the virtual environment access to the system site-packages dir.
  --symlinks            Try to use symlinks rather than copies, when symlinks are not the default for the platform.
  --copies              Try to use copies rather than symlinks, even when symlinks are the default for the platform.
  --clear               Delete the contents of the environment directory if it already exists, before environment creation.
  --upgrade             Upgrade the environment directory to use this version of Python, assuming Python has been upgraded in-place.
  --without-pip         Skips installing or upgrading pip in the virtual environment (pip is bootstrapped by default)
  --prompt PROMPT       Provides an alternative prompt prefix for this environment.

Once an environment has been created, you may wish to activate it, e.g. by sourcing an activate script in its bin directory.

2. 创建虚拟环境

python -m venv venv_demo

在这里插入图片描述

这里使用得最多的两个选项为:

  • ·--system-site-packages:是否包含Python系统的site-packages,添加这个选项后,会在sys.path的末尾添加上系统的site-packages相关目录。不添加这个选项时,将不会包含系统的site-packages
  • --without-pip:虚拟环境中是否包含pip.exe

3. 虚拟环境的激活

在虚拟环境的Scripts目录中有两个脚本文本activate.batdeactivate.bat,分别用于激活虚拟环境和退出虚拟环境。

注意:

  • 在pipenv创建的虚拟环境中同样有这两个脚本文件
  • activate文件有多个版本,当在windows系统时,如果用CMD时,使用activate.bat;如果用PowerShell时使用activate.psl

在这里插入图片描述

当我们激活虚拟环境后,系统的PATH路径的最前面添加了虚拟环境的Scripts目录,该目录下包含了pip.exe和python.exe。可以得到如下结论:

如果不激活虚拟环境:

  • 如果不激活虚拟环境,直接运行虚拟环境的Scripts目录下的python.exe,则此时的交互环境也将是在此虚拟环境下
  • 如果不激活虚拟环境,直接运行虚拟环境的Scripts目录下的pip.exe进行包的安装,则安装的包同样安装在虚拟环境中

注意,这里使用的PowerShell,所以查看path环境变量时使用的$env:path,如果是CMD,查看环境变量可以使用echo %PATH%

4. 虚拟环境包的管理

使用pip工具进行虚拟环境中包的管理,有两种方式

  • 第一种方式,使用虚拟环境中的activate激活虚拟环境
  • 第二种方式,不激活虚拟环境,但是运行的Pip指定为虚拟环境中Scripts目录下的pip.exe

pip命令的基本使用将在文末介绍。

pip常用命令总结

  https://zhuanlan.zhihu.com/p/651163220

1. 查看版本

pip --version    # python2.x命令 
############# 
pip3 --version   # python3.x命令

2. 升级pip版本

我们在安装第三方库时,有时会提醒我们要对pip进行更新,下面的命令就可以升级pip命令,命令如下:

pip install -U pip

3. 查看已经安装的库

pip list  
# 查找某个具体的库 
pip list | grep 库名 # mac系统或者Linux系统 
pip list | findstr 库名 # Windows系统

安装第三方库

安装第三方库需要运行pip install 这一条命令,下面是安装库名的几条具体命令:

 pip install [options] <requirement specifier> [package-index-options] ...
  pip install [options] -r <requirements file> [package-index-options] ...
  pip install [options] [-e] <vcs project url> ...
  pip install [options] [-e] <local project path> ...
  pip install [options] <archive url/path> ...

直接安装

直接运行pip install [options] [package-index-options] 这一条命令,即可安装自己想要的库,示例如下:

pip install selenium

指定版本安装

有时候我们需要指定安装库的版本,所以我们就需要在命令中加上版本限制

pip install package              # 默认安装最新版本
pip install package==3.141.0       # 指定版本
pip install package>=3.141.0     # 最小版本

指定源安装

pip默认是使用https://pypi.python.org/simple这个官方源地址,但是这个源安装库可能会比较慢,所以我们可以指定境内源进行安装,加快速度,常用的境内源地址如下:

清华:https://pypi.tuna.tsinghua.edu.cn/simple

阿里云:http://mirrors.aliyun.com/pypi/simple/

中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

山东理工大学:http://pypi.sdutlinux.org/ 

豆瓣:http://pypi.douban.com/simple/

安装命令如下:

pip install -i https://pypi.douban.com/simple/ package

通过 requirements 文件批量安装第三方库

我们从GitHub等仓库中拉取代码之后,需要在本地运行项目时,如果项目带有requirements文件,我们只需要通过这个文件就可以一次性安装这个项目所需要的第三方库了。

pip install [options] -r [package-index-options]

示例如下:

pip install -r requirements.txt

下载包但不安装

pip install <包名> -d <目录> pip install -d <目录> -r requirements.txt

卸载包

pip uninstall package pip uninstall -r requirements.txt

更新包

pip install --upgrade package pip install -U  package   # --upgrade 可简写为 -U

显示包所在的目录

pip show -f <包名>

查询可升级的包

pip list --outdated   # 列出所有过期的库 pip list -o               # --outdated的简写,列出所有过期的库

卸载 pip

python -m pip uninstall pip

:https://zhuanlan.zhihu.com/p/651163220

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
迁移Python虚拟环境venv,你可以按照以下步骤进行操作: 1. 首先,在原始位置激活你的venv环境。使用命令`source venv_demo/bin/activate`(在Windows上是`venv_demo\Scripts\activate`)激活虚拟环境。 2. 导出当前虚拟环境的依赖项列表。使用命令`pip freeze > requirements.txt`将所有安装的包及其版本写入requirements.txt文件中,以备后续使用。 3. 在你想要迁移到的新位置创建一个新的虚拟环境使用命令`python -m venv venv_demo_new`创建一个新的venv虚拟环境,其中venv_demo_new是新虚拟环境的名称。 4. 激活新的venv环境。使用命令`source venv_demo_new/bin/activate`(在Windows上是`venv_demo_new\Scripts\activate`)激活新的虚拟环境。 5. 安装依赖项。使用命令`pip install -r requirements.txt`安装之前导出的依赖项列表,以确保新的虚拟环境与原来的虚拟环境保持一致。 6. 现在,你已经成功迁移venv虚拟环境。你可以继续在新的位置使用虚拟环境进行开发和测试。 请注意,以上步骤假设你已经正确安装了venv工具,并且在迁移过程中没有发生错误。另外,记得在迁移之前备份你的虚拟环境,以防止意外情况的发生。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [python虚拟环境图文详解(虚拟环境作用以及虚拟环境搭建,切换退出迁移打包代码演示](https://blog.csdn.net/weixin_45440484/article/details/130144943)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [强制迁移Python虚拟环境](https://download.csdn.net/download/u010383605/10598273)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值