Python 使用cx_freeze 生成exe文件
在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller。py2exe恐怕是三者里面知名度最高的一个,但是同时相对来说它的打包质量恐怕也是最差的一个。pyinstaller打包很好,但是操作工序较为复杂。so个人还是推荐cx_freeze,本次所用的是4.3 32bit。
首先:cx_freeze下载地址:http://sourceforge.net/projects/cx-freeze/files/
接着,介绍一下cx_freeze的使用方法。
第一步:检查cx_freeze是否安装正确。
运行cmd,切换到cxfreeze.bat,然后执行 "cxfreeze -h" 看看能否出效果
如果显示帮助信息则表示安装成功;
获取直接使用Pycharm 引用cx_freeze 即可
第二步: 使用Pycharm 生成项目的 setup.py 文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
import sys from cx_Freeze import setup, Executable build_exe_options = { "optimize" : 2 , "include_files" : [ "SqlUtil.py" ]} base = None if sys.platform = = 'win64' : base = 'Win64GUI' executables = [Executable(script = 'xxxx.py' , base = base, targetName = "xxxx.exe" , compress = True , )] setup(name = 'xxxxx' , version = '0.1' , description = 'Sample cx_Freeze wxPython script' , options = { "build_exe" : build_exe_options}, executables = executables) |
命令
python setup.py bdist_msi 这个中可以生成安装包以及直接运行的exe文件
python setup.py build 生成exe可执行程序;
注意:过程遇到出错一般分为:提示没有显示相应的模块:需要在文件头部添加
1
2
3
4
5
6
|
_mssql.__version__ pymssql.__version__ socket.__name__ a = sys.stdout reload (sys) sys.setdefaultencoding( "utf-8" ) |