我正在研究一个将分发给我们客户的Python程序。
他们的要求是程序应该在没有人工干预的情况下处理所有事情。
如何在执行代码时检查并安装Python中缺少的模块?在R中,我可以使用下面提供的代码。
如何在Python中复制类似内容?
# Check and install missing packages in R
list.of.packages <- c("RDCOMClient", "htmlTable")
new.packages <- list.of.packages[!(list.of.packages %in% installed.packages()[,"Package"])]
if(length(new.packages) > 0) {
install.packages(new.packages)
}
答案 0 :(得分:3)
使用异常处理,然后使用pip
安装模块:
import pip
def install(package):
pip.main(['install', package])
def install_all_packages(modules_to_try):
for module in modules_to_try:
try:
__import__(module)
except ImportError as e:
install(e.name)
注意:__import__
内置导入模块的字符串名称。最好的方法是使用importlib
模块,例如importlib.import_module
答案 1 :(得分:0)
您可以使用异常处理:
try:
import some_module
except ImportError as e:
print(e)
# install module or some operation