温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Vscode中怎么配置 python poetry 虚拟环境

发布时间:2021-08-05 16:14:30 来源:亿速云 阅读:2988 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关Vscode中怎么配置 python poetry 虚拟环境,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、 Vscode 配置 poetry 虚拟环境的方法

方法一:

1. 找到虚拟环境存放路径

windows下,在文件管理器地址栏输入:

%userprofile%\AppData\Local\pypoetry\Cache\virtualenvs

找到虚拟环境存放路径 C:\Users\XXX\AppData\Local\pypoetry\Cache\virtualenvs。

2.在获取了虚拟环境路径的情况下,我们可以编辑包含VsCode设置的json文件settings.json,并将其分配到一个新的字段,称为 "python.venvPath"。需要注意的是,路径中的反斜杠"\"需要用双反斜杠"\"替换。

windows:

{
 “python.venvPath”:”C:\\Users\\XXX\\AppData\\Local\\pypoetry\\Cache\\virtualenvs”
}

ubuntu:

{
 “python.venvPath”:”~/.cache/pypoetry/virtualenvs/”
}

3.vscode 即可识别到虚拟环境的信息。

方法二:

1. 在使用poetry创建第一个项目之前,建议先对其进行配置,这样就可以在项目目录中的.venv文件夹中创建虚拟环境。

当你使用VsCode或Pycharm这类集成开发环境时就会变得非常方便,因为它们可以立即识别并选择正确的解释器。

poetry config virtualenvs.in-project true
注意:你只需设置一次配置,设置结果将在全局环境保留。

poetry config virtualenvs.create false --local 在部署时先使用这个命令可以使所有的包安装到系统中,而不是虚拟环境里。

2.使用 poetry install 命令创建虚拟环境(确保当前目录有 pyproject.toml 文件):

$ poetry install

这个命令会读取 pyproject.toml 中的所有依赖(包括开发依赖)并安装,如果不想安装开发依赖,可以附加 –no-dev 选项。如果项目根目录有 poetry.lock 文件,会安装这个文件中列出的锁定版本的依赖。如果执行 add/remove 命令的时候没有检测到虚拟环境,也会为当前目录自动创建虚拟环境。

项目文件夹下就会生成【.venv】文件夹。

3. vscode会立即识别到这个.venv的虚拟环境。

二、poetry 虚拟环境的设置

以上两种方法配置poetry虚拟环境都可以被vscode识别,若我们需要多套虚拟环境的时候,就可以使用 poetry env 命令为一个项目创建多个虚拟环境,下面是 poetry创建虚拟环境的介绍:

1.创建虚拟环境

(1)利用 virtualenvs.create=true 自动创建

当参数 virtualenvs.create=true 时,执行 poetry install 或 poetry add 时会检测当前项目是否有虚拟环境,没有就自动创建。

Vscode中怎么配置 python poetry 虚拟环境

这里一个问题就是:如果系统中既有Python2又有Python3,且项目既支持Python2也支持Python3,那poetry会优先使用Python2。

(2)poetry env

此命令以及子命令用于处理虚拟环境相关的操作。

如果需要创建的虚拟环境与当前系统默认的 Python 版本不一致,pypoetry 会自动去寻找不同于当前 Python 环境的 Python 解释器位置,如果它找不到,那么就只能手动指定解析器的绝对路径。

在非 Windows 系统上,一般可以通过 which pythonwhich python3.7 一类的命令寻找到自己指定的 Python 版本的位置。

在 Windows 系统中,可以通过环境变量来寻找 Python 的解释器位置。

poetry env use PYTHONPATH

使用 poetry env use PYTHONPATH 命令创建虚拟环境。

# in windowspoetry env use C:\Users\XXX\AppData\Local\Programs\Python\Python38\python.exe

poetry env list

poetry 可以使用 poetry env use PYTHONPATH 为一个项目创建多个不同的虚拟环境。

通过 poetry env list 可以查看当前项目所有的虚拟环境,增加 --full-path 可以看到虚拟环境的完整路径,一般在配置 VSCode、PyCharm 的时候需要使用。

2. 激活虚拟环境

执行poetry的命令并不需要激活虚拟环境,因为poetry会自动检测当前虚拟环境,如果想在当前目录对应的虚拟环境中执行命令,可以使用以下命令:

poetry run <你的命令> # 例如: poetry run python flask.py

poetry run 可以直接在当前虚拟环境中运行命令;poetry shell 可以在 shell 中激活当前虚拟环境,使用如下命令:

poetry shell

3. 删除虚拟环境路径

(1)可以直接删除虚拟环境文件夹

(2)通过 poetry env -h 查看帮助文档:

Vscode中怎么配置 python poetry 虚拟环境

所以执行删除虚拟环境时,指定对应的解析器版本即可。

poetry env remove python2 
poetry env remove python3

三、最后:

使用 PyPi 镜像

由于网络原因,部分地区使用默认的 PyPi 源可能效果不佳。通过在 pyproject.toml 中配置源可以使 poetry 从指定的 PyPi 镜像中拉取代码。 配置方式参考 官方文档 。注意 default = true 是必须的,否则 poetry [[tool.poetry.source]] 仅对部分环节有效, 在某些步骤 (如 resolve dependencies...) poetry 仍然使用的是 pypi url, 仍然会从默认源拉取哈希值,而我们国内访问不了或者连接超时, 就引起了报错。 在 pyproject.toml 末尾添加下面的内容来设置自定义镜像源:

[[tool.poetry.source]]name = "aliyun"default = trueurl = "http://mirrors.aliyun.com/pypi/simple/"

关于Vscode中怎么配置 python poetry 虚拟环境就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI