这篇文章将为大家详细讲解有关Vscode中怎么配置 python 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虚拟环境都可以被vscode识别,若我们需要多套虚拟环境的时候,就可以使用 poetry env 命令为一个项目创建多个虚拟环境,下面是 poetry创建虚拟环境的介绍:
(1)利用 virtualenvs.create=true 自动创建
当参数 virtualenvs.create=true 时,执行 poetry install 或 poetry add 时会检测当前项目是否有虚拟环境,没有就自动创建。
这里一个问题就是:如果系统中既有Python2又有Python3,且项目既支持Python2也支持Python3,那poetry会优先使用Python2。
(2)poetry env
此命令以及子命令用于处理虚拟环境相关的操作。
如果需要创建的虚拟环境与当前系统默认的 Python 版本不一致,pypoetry 会自动去寻找不同于当前 Python 环境的 Python 解释器位置,如果它找不到,那么就只能手动指定解析器的绝对路径。
在非 Windows 系统上,一般可以通过 which python
、which 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 的时候需要使用。
执行poetry的命令并不需要激活虚拟环境,因为poetry会自动检测当前虚拟环境,如果想在当前目录对应的虚拟环境中执行命令,可以使用以下命令:
poetry run <你的命令> # 例如: poetry run python flask.py
poetry run 可以直接在当前虚拟环境中运行命令;poetry shell 可以在 shell 中激活当前虚拟环境,使用如下命令:
poetry shell
(1)可以直接删除虚拟环境文件夹
(2)通过 poetry env -h 查看帮助文档:
所以执行删除虚拟环境时,指定对应的解析器版本即可。
poetry env remove python2 poetry env remove python3
由于网络原因,部分地区使用默认的 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 虚拟环境就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。