我在python3.6+中工作,希望检查脚本中是否安装了一些不同的模块。如果没有,我想尝试安装它们,但要注意以下几点:
1)如果我记得正确阅读,正确的方法是查看“打包和版本控制”。。可能使用setuptools。。我不太确定。有一个数字海洋页面很难跟踪。它讨论了这一点,但是我一直遇到一个关于这个主题的文档的问题:它们都是基于这样一个假设:项目将被上载到pypip以与pip一起使用。我特别不想这样。我想直接分发给个人,手工。也许将来它可以在封闭的,而不是对所有人开放的github回购。在
目前在我的脚本中,我使用的是try and except。尝试导入这些模块,如果它们不存在,我运行这个异常,我不知道它是否有效。在except ImportError:
from pip._internal import main as pip
pip(['install', colorama])
import colorama
print('colorama imported successfully')
我不知道pip(['install', colorama])在做什么。在
打包方面似乎在代码中包含了导入的模块。一个人如何实现这个功能?而不是检查是否已安装colorama,然后尝试启动子进程来安装它。。假设这是“正确”的方法,我怎么能把所有的东西都包括进去呢?在