python - 如何自动安装缺少的 python 模块?

标签 python module pypi

我希望能够写作:

try:
    import foo
except ImportError:
    install_the_module("foo")

处理这种情况的推荐/惯用方法是什么?

我见过很多脚本只是简单地打印错误或警告,通知用户缺少模块,并且(有时)提供有关如何安装的说明。但是,如果我知道该模块在 PyPI 上可用,那么我肯定可以更进一步启动安装过程。没有?

最佳答案

冒着反对票的风险,我想建议一个快速破解。请注意,我完全同意接受的答案,应该在外部管理依赖项。

但对于您绝对需要破解自包含的东西的情况,您可以尝试以下操作:

import os

try:
  import requests
except ImportError:
  print "Trying to Install required module: requests\n"
  os.system('python -m pip install requests')
# -- above lines try to install requests module if not present
# -- if all went well, import required module again ( for global access)
import requests

关于python - 如何自动安装缺少的 python 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6120902/

相关文章:

Python 3.7 挂起获取约会项目的 Outlook 日历开始或结束属性

在不同模块中使用的 Android 数据绑定(bind)

python - PyCharm 错误 : 'No Module' when trying to import own module (python script)

python - 是否可以将 sphinx 预先生成的 html 文档上传到 ReadTheDocs 网站?

python - 如何用字符串中的另一个正则表达式替换一个正则表达式

Python连接存储在列表中的不同大小的数组

python - .pypirc 文件的自定义位置

python - 是否可以只更新 pypi 索引中的详细信息,而不重新创建包?

python - 将 Excel 文件文件夹转换为 CSV 文件/合并 Excel 工作簿

javascript - IIFE VS 匿名闭包。