使用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的Requests包实现模拟登陆

如何使用Python的Requests包实现模拟登陆

前段时间喜欢用python去抓一些页面玩,但都基本上都是用get请求一些页面,再通过正则去过滤。 今天试了一下,模拟登陆个人网站。发现也比较简单。读懂本文需要对http协议和http会话...

详解Python在使用JSON时需要注意的编码问题

详解Python在使用JSON时需要注意的编码问题

写这篇文章的缘由是我使用 reqeusts 库请求接口的时候, 直接使用请求参数里的 json 字段发送数据, 但是服务器无法识别我发送的数据, 排查了好久才知道 requests 内部...

元组列表字典(莫烦python基础)

Tuple 叫做 tuple,用小括号、或者无括号来表述,是一连串有顺序的数字。 a_tuple = (12, 3, 5, 15 , 6) another_tuple = 12,...

python3的数据类型及数据类型转换实例详解

python3的数据类型及数据类型转换实例详解

之前介绍过python开发工具Jupyter的使用,今天继续讲解python的数据类型,python中有整型、浮点型、字符串、布尔类型,我们重点介绍布尔类型的运算,以及不同数据类型之间的...

浅谈python 中类属性共享的问题

感觉这种理解有问题,举个例子来说。 class Dog(object): name = 'dog' def init(self): self.age...