在Python中以编程方式获取conda包的列表



有没有一种方法可以在Python中以编程方式获取所有conda包?

基本上,我想找到相当于运行的Python

conda list

当然,我可以打开一个操作系统子流程,然后调用conda list,但我希望有一个更好的解决方案。

需要在环境中安装condaPython包,这通常只适用于base环境。然后可以使用conda list内部调用的相同代码,即来自模块conda.cli.main_listlist_packages。例如,以下内容等效于conda list -n foo

import conda.gateways.logging
from conda.cli.main_list import list_packages
from conda.common.compat import text_type
prefix = "/path/to/miniconda3/envs/foo"
exitcode, output = list_packages(prefix)
print('n'.join(map(text_type, output)))

请注意,这段代码很容易中断,因为它使用的是内部代码。

签名

>>> help(list_packages)
# Help on function list_packages in module conda.cli.main_list:
list_packages(prefix, regex=None, format='human', show_channel_urls=None)

尝试使用-

help('modules')

在交互模式下。(它在cpython中工作。(

最新更新