python是一个非常非常优秀的编程语言,它最大的特性就是跨平台。python程序几乎可以在所有常见的平台中进行使用,而且大部分无需修改任何代码!不过,python也有一点点小缺憾(这个是由于自身本质决定,不能叫缺憾,不过在这就这么称呼吧),那就是python程序的执行必须要有解释器的参与。那么python的程序如何在没有解释器的平台上使用呢?很简单,将python程序打包成exe可执行文件即可!
在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller。py2exe恐怕是三者里面知名度最高的一个,但是同时相对来说它的打包质量恐怕也是最差的一个。pyinstaller打包很好,但是操作工序较为复杂。so个人还是推荐cx_freeze。
首先:cx_freeze下载地址: http://sourceforge.net/projects/cx-freeze/files/
运行cmd,切换到cxfreeze.bat,然后执行 "cxfreeze -h" 看看能否出帮助提示(cxfreeze.bat一般在python安装目录的scipts下
这里python安装在D盘,所以在D:\Python27\Scripts)
如上则用记事本或者编辑器直接修改cxfreeze.bat,默认是C盘,这里修改为本机真实情况
安装正确,那么接下来的事情就非常简单了
正式开始打包,命令为:cxfreeze hello.py --target-dir dist
D:\Python27\Scripts>cxfreeze tomcat_restart.py --target-dir dist
生成dist文件,运行程序就在此目录下,可将整个目录打包移植到其他机器直接使用!
注意:
只能指定一个要打包的模块,也就是启动模块
所有.py文件都不能有中文字符,否则会出现编码异常。
发布后,可执行文件执行路径不能有中文(最好也不要有空格)。
启动执行的文件中不要有下面这种判断,否则可执行文件执行会没有任何效果。
if __name__ == "__main__":
main()