您的位置:首页 > 编程语言 > Python开发

将自己的python程序打包成exe(秀同学一脸呐)

2017-05-08 21:07 435 查看
Windows 10 x64 
Python 2.7 

IDE Pycharm 5.0.3
实际需求才是让我学习的最大动力啊~~





起因

今天实验室同学看到我的乞丐版二输入规则器,他挺感兴趣的,也想要玩玩,但是他没有装python的环境,总不能让他一直玩我电脑吧,所以想到了将程序打包成exe,直接运行!想法一出来,根本挡不住啊,说干就干,先百度python打包exe,一大堆答案,我整理了一下,大概有Py2exe和pyinstaller两种,但是,我给你看张图 



这是多久前的产品啊,我屮艸芔茻,如果你执意要用这个请移步,然后自己去玩把,反正我下了之后,根本跑不起来,,,,你可以试试咯py2exe官方下载


正题时间

最后我还是选择了pyinstaller,而且亲测成功

在同学win8/win10,64位机器上可以运行,win7 x64和其余所有32位亲测失败,会提示不兼容,所以说,如果要32/64通吃,就要在python32位环境下(不是win32位)编译打包exe,才能在32/64成功。 

先放上pyinstaller包

Pyinstaller下载地址,GitHub版本,亲测可用

Pyinstaller官网下载地址,我没试过,应该也行


至于怎么安装pyinstaller

可以参考python如何安装第三方包 

我的步骤是: 

1,打开cmd,切到pyinstaller解压包目录,我直接放在c盘目录下了,所以我的操作是 
C:\Users\MrLevo>cd C:\pyinstaller-develop


2.安装pyinstaller,我的操作是 

进目录后输入
python setup.py install


3开始最简单的py程序打包 

先将需要打包的程序,我用自己的Tkint.py,把它复制到步骤1的目录下,(自己py文件名字自己修改)然后使用命令: 
pyinstaller -F Tkint.py
(建议使用)

如果运行的是gui类型程序,你不需要弹出命令窗口,你可以采用:
pyinstaller -F -w文件名.py
 

之后你的命令窗就会跑半分钟左右,跑完之后是这样的; 



打包好的Tkint.exe已经在该目录下的dist文件夹中了。如果成功,应该多了这两个文件夹 



dist里面是这样的 


 

然后你就可以拿去给别的机器测试你的程序啦,哈哈哈哈哈


BTW

但是,如果你使用
pyinstaller -F -w文件名.py
在别的电脑运行你的exe文件时候你看不到命令窗口,你会认为程序没有运行,打包后的exe比较大,以我的Tkint.py来说,160行的程序,打包后61MB,额,我直接插在U盘上在别的电脑运行,大概需要半分钟左右才能跑起来,所以请慢慢等待。。。。

如果你还要改图标,创建目录啥的,请使用
pyinstaller -h
来查看参数 




惯例挖坑

有空把我的加密登录做个gui出来,连接本地表格那种,然后打包exe分享下。挖坑以后埋

如果觉得内容不够细致,可以参考用PyInstaller将python转成可执行文件exe笔记 

或者用PyInstaller把Python代码打包成单个独立的exe可执行文件

so ,piece out,guys 


 

(话说今天的pandas还没看,简直作死,还得把开题报告改改,麻蛋,我还是先写个大小写首字母转换再说,这参考文献写的简直了!!)


补充

7.7补坑,基于python的参考文献生成器beta已完成,欢迎下载和使用免费下载基于python的文献生成器.exe 

下次再把代码和构思补上,再挖坑

7.8补充 

利用Pyinstaller编译关联文件成exe 

只要输入时候写成 
pyinstaller -F main.py related.py
 

即可,其中main为主函数,其中有import related.py的函数,只要把重要的放前面就好啦,然后最后的exe文件名会以第一个命名,也就是最后形成一个main.exe就是酱紫。

修改spec文件,重新加上参数再编译。 

按照正常步骤做过之后,在目录中还会有一个spec文件,用编辑器打开,之后修改参数,保存后,在原来操作的cmd上写入:
pyinstaller main.spec
1
1

即可,这个是我在gui图像生成exe格式时候,图片无法打包查阅到的,需要单独添加
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: