如何使用poetry检查python包是否安装

问题描述 投票:0回答:3

我正在使用 Poetry 来管理我的 Python 项目,我想检查是否安装了软件包。这意味着该包实际上是从远程存储库获取的,并且位于

.venv/
文件夹中。我浏览了官方文档,但没有找到任何可以做到这一点的命令。

有什么想法吗?谢谢。

更新:我通过运行以下命令并解析其输出最终得到了一个解决方案。

在此感谢大家的帮助!

poetry install --dry-run --sync --no-ansi

python python-poetry
3个回答
3
投票

假设您已激活

.venv
文件夹中的虚拟环境(例如使用
source .venv/bin/activate
),则可以使用
pip list
列出该虚拟环境中所有已安装的软件包。还有一个
poetry show
命令可以列出您可能想要查看的所有可用软件包:https://python-poetry.org/docs/cli/#show

更新:

您可以解析

poetry install --dry-run
命令的输出来查看安装了哪些软件包,而无需实际安装任何软件包。查找同时包含“正在安装”和“已跳过”以及“原因:已安装”的行,以查看已安装哪些软件包。


1
投票

我猜您想检查您的诗歌环境中是否安装了特定的软件包。 您可以使用

show
命令:

poetry show <packagename>

这将显示包裹信息。

niraj@HOST-ANALYTICS:~/Work/Code/apitutorialsnew$ poetry show pandas
 name         : pandas                                                                  
 version      : 1.5.3                                                                   
 description  : Powerful data structures for data analysis, time series, and statistics 

dependencies
 - numpy >=1.20.3
 - numpy >=1.21.0
 - python-dateutil >=2.8.1
 - pytz >=2020.1

required by
 - seaborn >=0.25
 - statsmodels >=0.25

-1
投票

导入pkgutil

package_name = "package_name" # 替换为你要检查的包的名称

检查软件包是否安装

if pkgutil.find_loader(package_name):
    print(f"{package_name} is installed.")
else:
    print(f"{package_name} is not installed.")
© www.soinside.com 2019 - 2024. All rights reserved.