如何部署具有先决条件的python脚本

问题描述:

我正在开发一个应用程序,首次部署时需要一些初始配置(初始参数,服务器地址等...)。 这个应用程序是用不同于python的语言编写的,但是我使用的是python,因为它是linux机器上最常用的预安装语言。如何部署具有先决条件的python脚本

我想在脚本中像这样的顶部安装的前提条件:

import os 
os.system("python setup.py install <package>") 
from <package> import <stuff> 

但后来我属于一个用户的计算机上安装包,只用它就一次。我应该在脚本结束时将其卸载吗?我如何去做这件事?

为什么不在执行程序之前从shell脚本安装python软件包?如果您之后尝试卸载这些软件包,请参阅this question。看起来好像如果您使用easy_installpip进行安装,则可以使用pip uninstall

更新基于评论: 您也可以考虑部署您的脚本使用cx_freezepy2exe,或其他一些选项单独的应用程序(查看其他信息在这里:http://docs.python-guide.org/en/latest/shipping/freezing/)。

+0

是的,这似乎是最好的解决方案,但仍似乎有点肮脏。这真的是最好的方式吗?另外,感谢您提供卸载方法:p – SnelleJelle

+0

另一种解决方案是将Python作为独立程序发布到必备软件包中。更好的可能取决于程序和最终用户的目的。 –

+0

如果您的最终用户都是基于Linux的,请考虑使用冻结或其他包装:http://docs.python-guide.org/en/latest/shipping/freezing/。 –