使用py2exe在Windows下将Python程序转为exe文件

yipeiwu_com6年前Python基础

前提条件:
需要安装easy-install模块,这是一个python的模块打包工具。

首先下载easy_setup.py的源代码,下载地址:
http://pypi.python.org/pypi/setuptools
自己用记事本存放源代码用.py后缀名,在命令行执行即可,这样你就可以在python的安装目录下Python\Scripts这个目录看到有多好几个关于easy_install的文件,说明这个easy_install安装好了,那么应该如何使用这个这个安装方法呢?

打开cmd,命令行,进入到Python\Scripts目录下,这个目录下执行easy_install python-dateutil,既可以安装dateutil这个模块,easy_install pyparsing就可以安装pyparsing这个模块了。

我的机子就是:

E:\ANZHUANG\Python\Scripts>easy_install python-dateutil 
E:\ANZHUANG\Python\Scripts>easy_install pyparsing 
E:\ANZHUANG\Python\Scripts>easy_install chardet 

这样执行就ok了!

py2exe模块安装:
http://prdownloads.sourceforge.net/py2exe下载对应版本的安装包。

样例代码:
新建test.py文件,内容如下:

print "show me" 

新建一个mysetup.py编译文件,内容如下:

from distutils.core import setup 
import py2exe 
setup(console=["test.py"]) #注意test.py与前面新建的是一致的 

运行如下命令:

>>python mysetup.py py2exe

运行结果:
当前目录下新增一个dist目录里面包含不等数目的如下类型文件:

  • .exe 其中包含一个目录文件
  • .pyd 已编译的py文件
  • .dll 需要用到的外部DLL文件,其中包含一个pythonxx.dll
  • .zip 需要用到的库文件,里面打包了所有需要库文件的编译文件

查看帮助:

python mysetup.py py2exe --help 

样例目录:
安装py2exe模块后,其自带的样例存放在:lib\site-packages\py2exe\samples

说明:
编译不同类型的二进制所需要的参数是不一样的,比如:命令行程序参数名是console,而GUI程序的参数名是Windows;具体可以先参考样例或帮助命令脚本先!

用后感:
原本以为是转换完以后就只剩一个exe文件,用过才发现并没有想想象中那样把所有的内容都进行了二进制编码。呵呵,有时候想的东西太理想了,毕竟这样时最容易实现的可行方案!

相关文章

Python 使用 PyMysql、DBUtils 创建连接池提升性能

Python 使用 PyMysql、DBUtils 创建连接池提升性能

Python 编程中可以使用 PyMysql 进行数据库的连接及诸如查询/插入/更新等操作,但是每次连接 MySQL 数据库请求时,都是独立的去请求访问,相当浪费资源,而且访问数量达到一...

跟老齐学Python之开始真正编程

跟老齐学Python之开始真正编程

通过对四则运算的学习,已经初步接触了Python中内容,如果看官是零基础的学习者,可能有点迷惑了。难道在IDE里面敲几个命令,然后看到结果,就算编程了?这也不是那些能够自动运行的程序呀?...

基于wxPython的GUI实现输入对话框(2)

基于wxPython的GUI实现输入对话框(2)

接着上一篇基于wxPython的GUI输入对话框1,继续学习。 在程序输入中,有时会要求同时改变多个参数值,而且类型也不尽相同, 这时TextEntryDialog就显得不适用了.WxI...

Django 生成登陆验证码代码分享

Django 生成登陆验证码代码分享

环境准备 python3.52 pycharm5.05 Pillow 自制的验证码工具包/utils/check_code 验证码的作用 防恶意破解密码:防止,使用程序或...

Python基本数据类型详细介绍

1、空(None)表示该值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。2、布尔类型(Boolean...