使用pip从列表安装包

Gok*_*kul 6 python pip

我正在尝试使用pip安装包列表.

我使用的代码是:

import pip

def install(package_name):
        try:
            pip.main(['install', package_name])
        except:
            print("Unable to install " + package_name)
Run Code Online (Sandbox Code Playgroud)

此代码工作正常,如果包不可用,则会出错:

找不到匹配的分布

但是,我想要做的是如果安装失败(例如:无效的包名),我想打印失败的包.

可以做些什么呢?

任何帮助将不胜感激,谢谢.

tdu*_*ube 5

尝试检查非零的返回值,这表示安装时发生错误.并非所有错误都会触发异常

import pip

def install(package_name):
        try:
            pipcode = pip.main(['install', package_name])
            if pipcode != 0:
                print("Unable to install " + package_name + " ; pipcode %d" % pipcode)
        except:
            print("Unable to install " + package_name)
Run Code Online (Sandbox Code Playgroud)