admin 管理员组

文章数量: 1184232

换新电脑需要重新配置环境,因为隔太久都忘了之前是怎么配置好的。

磕磕绊绊配置环境,又卡在相同的步骤上,遇到的熟悉的报错和问题,但一点也不记得怎么处理,熟悉的崩溃席卷理智。

因此我准备开始做笔记记录一下配置流程和解决方法给自己看,留备下次。

目录

一、什么是虚拟环境

二、常用虚拟环境管理工具

三、创建虚拟环境(venv)

四、激活虚拟环境(venv)

1.激活

2.激活时遇到的常见问题

问题1

1)按win和R键运行powershell。

2)查看权限

3)输入下面代码激活

问题2

3.退出虚拟环境


一、什么是虚拟环境

  • 有两个项目A和B,如果A和B都要用到某一模块,但版本不相同怎么办?
  • 在使用pip安装包时,会发现在安装的时候会安装其它的依赖包,但当我们用pip移除一个包时,却只移除了指定的包

为了解决上面的问题,python使用了虚拟环境这个概念,你可以认为是python环境的多个副本,只是在不同的副本中安装了不同的包。既然叫虚拟环境,总得有点不一样:虚拟环境中一般不包含标准库;不包含python解释器运行时所需的依赖文件;可执行文件全部放于Scripts目录等。

想正经了解虚拟环境的可以看一下这位大佬的文章。

Python虚拟环境(pipenv、venv、conda一网打尽)[通俗易懂]-腾讯云开发者社区-腾讯云

二、常用虚拟环境管理工具

virtualenv、venv、pipenv、conda、Python Launcher for Windows Python

  • 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视为一等公民。
    • Pipfile是社区拟定的依赖管理文件,用于替代过于简陋的 requirements.txt 文件。Pipfile 文件是 TOML 格式而不是 requirements.txt 这样的纯文本。
    • virtualenv能够很好的完成虚拟环境的搭建和python版本的管理,但是跨平台的使用不太一致,且有时候处理包之间的依赖总存在问题
    • pip能够很好的完成包的管理,但是仍然推荐pipenv,相当于virtualenv和pip的合体,且更加强大。
  • conda 支持Python、R、Java、JavaScript、C等多种开发语言的包、依赖和环境管理工具,能运行在Windows、MacOS、Linux多个平台,可以在本地轻松创建、保存、切换环境。当安装anaconda时,会自动安装conda工具。
  • Python Launcher for Windows Python 从3.3版本开始,在 Windows 系统中自带了一个 py.exe 启动工具。如果你是使用 Python 官网下载的安装包安装的 Python 3.3(或更新版本)环境,那么可以直接在命令提示符中使用这个工具(在windows中,py.exe会安装在C:\Windows目录)。 py 可以打开默认的 python 提示符; py -2.7py -3 打开对应的 Python 版本,py -0将列出系统中安装了哪些版本的python

这几个管理工具本人只接触过venv和conda两种,目前常用venv,所以这里只介绍venv。

三、创建虚拟环境(venv)

【Python】创建虚拟环境的四种方式(venv | pipenv | conda | poetry)_创建python虚拟环境-CSDN博客

如何使用 Python 内置虚拟环境工具 venv 创建和管理虚拟环境_克莱因瓶_InfoQ写作社区

创建过程参考的文章如上。

终端里输入该命令创建新的虚拟环境。

python -m venv myenv
  • myenv 是虚拟环境的名称,可以根据需要更改。

  • 执行成功后,会在当前目录下生成一个名为 myenv 的文件夹。

四、激活虚拟环境(venv)

1.激活

这里是win的激活方法,在终端输入该命令。

myenv\Scripts\activate

激活后前面显示当前使用的虚拟环境的名称。(这里我的虚拟环境名称是.venv)

2.激活时遇到的常见问题

问题1

激活的时候报错,查了一下因为win10默认是关闭了权限的,需要手动修改。修改方式来自这位大佬的文章。

win下激活python虚拟环境及激活失败解决方案_python 激活报错权限-CSDN博客

1)按win和R键运行powershell。

2)查看权限
Get-ExecutionPolicy -List

果然是你没激活。

3)输入下面代码激活

激活后用2)代码查看一下,发现已经激活了。

问题解决,接下来按照上面激活虚拟环境的步骤来就可以激活了。

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

问题2

据说低于python3.6的版本没有内置venv,所以如果虚拟环境创建环节报错,可能是这个问题。

解决办法:下一个版本高一点的python或者用virtualenv工具创建虚拟环境。

3.退出虚拟环境

deactivate

本文标签: 环境 python venv