Python 3.5.1:如何检查openpyxl包是否存在,如果不存在,如何下载和安装;内;剧本?
我两周前开始编写python代码,直到现在,我已经在将excel数据转换为txt文件后对其进行了操作。现在,我想直接操作excel数据,所以我需要安装openpyxl包。但是,我的脚本将在许多不同的地方和计算机上使用(注意:它们都使用OSX或Linux发行版),这些地方和计算机可能(可能不)安装了openpyxl包。我想让我的脚本检查这个包是否存在,如果它没有退出,那么下载并安装它 为此,当我搜索并发现我可以通过首先导入pip模块,然后导入pip.get\u installed\u distributions()方法来检查包的存在性。然而,我不确定我是否走错了路。此外,我不知道如何“不离开脚本”下载和安装openpyxl包Python 3.5.1:如何检查openpyxl包是否存在,如果不存在,如何下载和安装;内;剧本?,python,python-3.x,python-3.5,Python,Python 3.x,Python 3.5,我两周前开始编写python代码,直到现在,我已经在将excel数据转换为txt文件后对其进行了操作。现在,我想直接操作excel数据,所以我需要安装openpyxl包。但是,我的脚本将在许多不同的地方和计算机上使用(注意:它们都使用OSX或Linux发行版),这些地方和计算机可能(可能不)安装了openpyxl包。我想让我的脚本检查这个包是否存在,如果它没有退出,那么下载并安装它 为此,当我搜索并发现我可以通过首先导入pip模块,然后导入pip.get\u installed\u distri
您愿意帮助我吗?当您没有要部署的软件时,您试图解决部署问题,这是在超越自己 让一个脚本尝试管理自己的部署通常是一个坏主意,因为这会让包管理器失去责任 以下是我对你问题的回答:
virtualenv
(虚拟环境),使用pip安装openpyxl
和您需要的任何其他软件包openpyxl
定义为依赖项来创建包,确保包可以正确安装/运行(我建议添加测试),然后部署到PyPi,以便任何人都可以使用您的软件main
方法中:
#!/usr/bin/env python3
import sys
try:
import openpyxl
except ImportError as iE:
print("Python Excel module 'openpyxl' not found")
sys.exit(1)
... rest of script ...
看,我忘了在我的回答中澄清。。。hashbang
#/usr/bin/env python3
位于脚本文件的顶部,而不是方法中,因此如果要将代码放入函数中,请忽略该行。