python学习笔记--将python源文件打包成exe文件(pyinstaller)
pyinstaller库的使用
PyInstaller是一个十分有用的第三方库,它能够在Windows、Linux、MacOSX等操作系统下将Python源文件打包,通过对源文件打包,Python程序可以在没有安装Python的环境中运行,也可以作为一个独立文件方便传递和管理。PyInstaller需要在命令行(控制台)下用pip工具安装,如下:
:\>pipinstallpyinstaller
或
:\>pip3installpyinstaller
PyInstaller的官方网站网址为http://www.pyinstaller.org/。PyInstaller库会自动将PyInstaller命令安装到Python解释器目录中,与pip或pip3命令路径相同,因此可以直接使用。使用PyInstaller库十分简单,请注意,由于PyInstaller不支持源文件命中有英文句号(.)存在,假设dpython.py文件在D:\codes目录中,命令如下:
:\>pyinstallerdpython.py
或
:\>pyinstallerD:\codes\dpython.py
执行完毕后,源文件所在目录将生成dist和build两个文件夹。其中,build目录是pyinstaller存储临时文件的目录,可以安全删除。最终的打包程序在dist内部的dpython目录中。目录中其他文件是可执行文件dpython.exe的动态链接库。可以通过-F参数对Python源文件生成一个独立的可执行文件,如下:
:\>pyinstaller-Fdpython.py
执行后在dist目录中出现了dpython.exe文件,没有任何依赖库,执行它即可。使用PyInstaller库需要注意以下问题:文件路径中不能出现空格和英文句号(.);源文件必须是UTF-8编码,暂不支持其他编码类型。采用IDLE编写的源文件都保存为UTF-8编码形式,可直接使用。PyInstaller有一些常用参数,如下所示:
-h,--help查看帮助
-v,--version
查看PyInstaller版本
--clean清理打包过程中的临时文件
-D,--onedir
默认值,生成dist目录
-F,--onefile
在dist文件夹中只生成独立的打包文件第
-pDIR,--pathsDIR添加Python文件使用的第三方库路径
-i<.icoor.exe,IDor.icns>,--icon<.icoor.exe,IDor.icns>指定打包程序使用的图标(icon)文件
PyInstaller命令不需要在Python源文件中增加代码,只需要通过命令行进行打包即可。-F参数最为常用,对于包含第三方库的源文件,可以使用-p添加第三方库所在路径。如果第三方库由pip安装且在Python环境目录中,则不需要使用-p参数。