相关疑难解决方法(0)

Poetry 未在 venv 中安装软件包

我是诗歌新手,我有一个问题,在网上找不到太多有关信息。我的诗歌应该创建一个 python 3.9 的虚拟环境,它做到了。这是我从命令中得到的poetry env info

Virtualenv
Python:         3.9.10
Implementation: CPython
Path:           /home/..../.venv
Valid:          True

System
Platform: linux
OS:       posix
Python:   /usr
Run Code Online (Sandbox Code Playgroud)

当我输入poetry shellthen时python,我确实进入了 python 3.9,并且能够导入已安装的软件包。但这是奇怪的部分。当我尝试检查已安装的软件包之一时,我得到的结果如下:

>>> import XXX.python_utils as utils
>>> utils
<module 'XXX.python_utils' from '/home/X/.local/lib/python3.9/site-packages/XXX/python_utils/__init__.py'>
Run Code Online (Sandbox Code Playgroud)

我的机器上确实安装了实际的 python 3.9,但 Poetry 应该在 virtualenv 中安装该包,而不是实际的 python3.9 site_packages,对吗?然后我尝试在我的机器上安装 python 3.9 而不是虚拟环境,包仍然可以导入。结果与上面相同。

然后我仔细检查了里面的东西.venv/lib/python3.9/site-packages,里面基本上什么都没有。我发现的是一些带有包名称并以.dist-info. 我不确定那是什么。

我也尝试which pythonpoetry shell,这就是我得到的:

(.venv) XXX@XXX:~/XXX$ which python
/home/.../.venv/bin/python
Run Code Online (Sandbox Code Playgroud)

看来诗歌确实在 venv 中使用了 python 3.9

最后,每次我运行 a …

python virtualenv python-3.x python-poetry

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

python ×1

python-3.x ×1

python-poetry ×1

virtualenv ×1