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

yipeiwu_com5年前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中吸引人的一些特性

这里我不讨论 python 的一些有用的库或者框架,只从语言本身,最小支持的情况下谈论这门语言本身。语言的发展都是越来越接近Lisp,这也是Lisp这门语言伟大的原因。 下面我罗列一下我...

解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available

解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available

简述 从官网下载了Python3.7.4,直接编译安装后,使用pip3出现了报错信息: Can't connect to HTTPS URL because the SSL module...

Python ValueError: invalid literal for int() with base 10 实用解决方法

今天在写爬虫程序的时候由于要翻页,做除法分页的时候出现了 复制代码 代码如下: totalCount = '100' totalPage = int(totalCount)/20 Va...

python中使用print输出中文的方法

python中使用print输出中文的方法

看Python简明教程,学习使用print打印字符串,试了下打印中文,不行。 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (un...

python实现微信发送邮件关闭电脑功能

Python 通过微信邮件实现电脑关机,供大家参考,具体内容如下 通过手机微信发送QQ邮件给sina邮箱,然后利用python的pop3定时检查sina邮箱的邮件主题以及邮件来源,并在电...