admin管理员组

文章数量:1664579

这个程序的倒数第二篇,最后一篇把最后的一些改进总结下。

本篇记录源代码打包过程,毕竟是要交给一个不懂Python的人使用。在网上查了好多资料,决定用pyinstaller给程序打包。

安装

使用pip安装,会自动下载所有依赖的包

pip install pyinstaller

也可以去官网下载后进入解压目录python setup.py install

pyinstaller依赖pywin32,可以先在shell下import win32com看看是不是已经有了,如果没有可到这里选择合适的版本。

打包

  1. 在源代码文件夹上,按住shift右键鼠标,选择“在此处打开命令窗口”

  1. 输入打包命令,最简单的是pyinstaller program_name.py,pyinstaller会检测需要哪些依赖包,并一起打包。
C:\Users\Administrator\Desktop\crypto> pyinstaller ginterface.py

注意,只会检测需要安装的那些依赖包,自己敲的模块可不算,所以自己的模块一定要和"program_name.py" 放在一个文件夹,且这个文件夹中要有__init__.py 文件。

  1. 打包结束,文件夹中多出不少东西,如图所有不是.py后缀的都是新出现的,不过只有dist文件夹有用,里面有一个叫做ginterface的文件夹,点进去找到.exe文件打开,完美运行。

  1. 把ginterface文件夹打个压缩包,放进U盘。皮皮虾,我们走!

这是最简单的打包方法了,如果依赖的库不在Python库的文件夹里,还需要使用’-p’把依赖库的路径添加;或是有一些需要依赖的数据文件,可依靠修改spec文件打包,这篇博客有通过修改spec添加数据文件的例子。

其他参数

我的打包没什么要求,参数什么的都没用上,其实pyinstaller有不少参数,常用的有:

-F, –onefile 打包成一个exe文件。

-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。

-c, –console, –nowindowed 使用控制台,无界面(默认)

-w, –windowed, –noconsole 使用窗口,无控制台

具体的最好还是看看官方文档

注意事项

从上面可以看出,我代码的文件夹叫’crypto’,文件夹里有一个模块也叫’crypto’,在源代码运行时这是没问题的,打包时也不会出问题。但是在运行exe时,程序在crypto文件夹里找我需要的那个函数,当然找不到啦,所以一直在报错~~~module object has no attribute 'doCrypto'

把文件夹名字改了再打包就完全正常了。

本文标签: 简单程序WolfPython