如何部署python脚本?

Ksh*_*dav 16 python windows deployment package jupyter

这听起来像是一个很开放的问题,但是我是python的狂热者,对于这个开发世界来说还很新。我开发了一个python脚本,该脚本接受输入并根据我在脚本中放置的算法给出输出。我想使用此脚本并将其打包,以便没有技术意识的最终用户可以使用它,并且只关心他们提供的输入和获得的输出。

我已经使用Jupyter Notebook开发了这个复杂的代码,并且我想知道一种如何打包或部署该代码的方法,以便最终用户可以使用它而不用看它如何工作,因为这可能会使他们不堪重负。

谁能帮我解决这个问题?最好使用Opensource。

谢谢

Ksh*_*dav 6

我想通过建议几种部署Python脚本或模型的方法来解决这个问题:

  • Docker:这是托管脚本和在线部署机器学习模型的最流行方法之一。您可以使用Docker来对代码进行容器化,并使用其他应用将其作为微服务托管。
  • PEXPEX是Twitter上开发的一种聪明工具,它允许Python代码作为可执行zip文件提供。
  • AWS:使用AWS,您可以创建一个免费帐户并开始托管/部署。在线提供了大量资源。
  • PYSimple,Pyinstaller和Sparrow:如以上答案中所述,我们也可以使用这些软件包来完成任务。请阅读上面。
  • Flask App:如果您不想使用Docker,请使用简单的flask应用程序,就可以在线托管脚本。但是由于没有容器化,因此会有很多问题。最好使用Docker。
  • py2exe:如果您希望将python文件转换为Windows可执行文件,请单击此处
  • cx_Freeze:类似于py2exe,您也可以使用它

当我找到它们时,我将继续添加更多内容,但是我认为使用DOCKER的最佳方法。希望这可以帮助。


小智 5

PyInstaller是一个强大的开源工具,用于Python项目的跨平台部署/分发。

*注意:虽然我没有使用 PyInstaller 分发 Jupyter Notebook 的经验,但本指南似乎是合理的。

通过pypi安装:

pip install pyinstaller
Run Code Online (Sandbox Code Playgroud)

没有控制台的代码分发可以很简单:

pyinstaller --noconsole script.py
Run Code Online (Sandbox Code Playgroud)

然后你可以在工作目录的 dist 文件夹下找到你的 .exe(Window)。