怎么将python代码封装成一个程序

怎么将python代码封装成一个程序,第1张

如何将python程序封装成exe可执行文件

将python程序直接转成exe程序的方法很多,主流的工具有PyInstaller、cx_freeze、py2exe等,论及优缺点,可谓各有千秋。然而,再好的工具在使用的时候也会遇到各种各样的问题。这里无法比较哪个好那个坏,不同工具对不同类型程序的处理能力不同,也许你用这个方法转化出来的程序出问题了,换个方法就行了。本文主要介绍py2exe的安装和使用。

py2exe的安装

点此下载和64位python2.7配套版本。

傻瓜式安装,就是一步一步往下点。

py2exe的使用

将python安装路径添加到系统环境变量Path值中。(若已添加,请忽略此步)

建立setup.py文件,文件中输入以下代码:

from distutils.core import setupimport py2exe

setup(console=["将要转换的文件名称.py"])123

在终端(cmd)输入以下命令: 

setup.py py2exe 

这样便完成了从.py文件到 .exe文件的转换,生成的软件在dist文件夹内。

这里需要注意的是:不同python程序不能一概而论,具体情况需要具体讨论。

例:当运行出错,提示缺少sip文件时,setup.py可修改为:

from distutils.core import setupimport py2exe

setup(console=[{"script":"main.py"}], options={"py2exe":{"includes":["sip"]}})123

例:当你不想dos窗口停留,需要其一闪而过时,setup.py可修改为:

from distutils.core import setup  

import py2exe  

setup(window=['name.py'])  #这里console改为window那么dos窗口不出现

PyInstaller是一个用来将Python程序打包成独立可执行软件的工具,支持 Windows、Linux 和 Mac OS X。生成的可执行软件在没有Python的环境中可以直接运行,方便软件分发,进一步降低使用成本,提升使用效率。

下面演示如何使用 PyInstaller 将程序打包成Windows下的exe软件。

使用pip的方式进行安装,这样可以自动安装其他依赖库。

如果pip还未安装,请参考我的另一篇文章《 Python pip包管理工具 》

在cmd命令行控制台或者VS Code内置的终端输入命令行生成应用,首先将当前路径切换到Python程序所在的路径(如下示例的SubOcr.py文件在python文件夹下的SubOcr文件夹内),然后输入生成应用的命令。

命令执行成功后在 I:\work\python\SubOcr\dist 文件夹下生成了SubOcr文件夹,里面包含了SubOcr.exe文件。整个SubOcr文件夹就是一个绿色软件,随便移动到任何位置都可运行。

实际上在用pyinstaller命令时会在Python程序的所在路径生成一个后缀为spec的同名文件,然后根据此文件的配置生成应用,这就是PyInstaller的原理。这样做的好处是spec保存了生成应用的配置,每次重新生成应用时可以省略指定参数,尤其是指定了其他的资源、程序库时。我们可以通过以下命令先生成spec文件。

pyi-makespec的命令参数跟pyinstaller的相同,在生成spec文件后可以对其部分选项进行编辑(可以用VS Code或自带的记事本编辑),添加更多参数,然后再用pyinstaller命令生成应用。

spec文件的主要选项:

上面示例的SubOcr用到了opencc和opencv-python,其中opencc下的数据文件和opencv-python下的dll文件在生成应用时不会自动导入(缺少这些文件应用无法正常使用),因此需要在spec文件中指定路径。对spec文件的修改如下:

以上便是PyInstaller打包Python程序的全过程,如果在此过程中遇到问题,可以在评论区留言,定当知无不言,言无不尽。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11479083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存