`
jsntghf
  • 浏览: 2476242 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

使用py2exe创建可执行程序

阅读更多

py2exe作为Distutils的扩展,可用来创建可执行的exe程序,如果不想让用户单独安装Python解释器的话,它就能大显神威了。py2exe包也可以创建拥有GUI(例如wx)的可执行文件。

 

一、安装py2exe

 

py2exe官网下载并安装与你所安装的Python版本对应的py2exe,这将安装py2exe和相应的例子,这些例子被安装在lib/site-packages/py2exe/samples目录下。

 

二、使用py2exe

 

如果你有一个名为hello.py的python脚本,如下:

 

print 'Hello, world!'
raw_input('Press <enter>')

 

你想将它转换为exe程序,并运行在没有安装python的windows系统上,那么首先你应写一个用于发布程序的设置脚本。让我们找个只包含hello.py文件的空目录,创建setup.py:

 

from distutils.core import setup
import py2exe

setup(console=['hello.py'])

 

可以像下面这样运行脚本:

 

python setup.py py2exe

 

执行后将产生一个名为dist的子目录,其中包含了hello.exe、python27.dll、library.zip以及一些pyd文件。

 

如果你的hello.py脚本中用了已编译的C扩展模块,那么这些模块也会被拷贝到这个子目录中,同样,所有的dll文件在运行时都是需要的,除了系统的dll文件。dist子目录中的文件包含了你的程序所需要的所有文件,你应将这个子目录中的所有内容一起发布。

 

默认情况下,py2exe在目录dist下创建以下这些必须的文件:

1、一个或多个exe文件

2、python27.dll 

3、.pyd文件,这是已编译的扩展名,是exe文件所需要的

4、.dll文件,这是.pyd所需要的

5、library.zip文件,它包含了已编译的纯python模块,如.pyc或.pyo

 

上面的setup.py创建了一个控制台的hello.exe程序,如果你要创建一个图形用户界面的程序,那么你只需要将setup.py中的console=["hello.py"]替换为windows=["hello.py"]既可。

 

在dist目录,你会看到一个hello.exe文件,这就是我们要的exe文件,但是,运行这个文件的前提是不能脱离dist文件夹,因为dist文件夹下的其它文件在exe执行时都会调用到,所以要想移动这个exe文件,要连同dist文件夹下的文件一起移动,否则,单独移动exe文件是无法正常执行的。

 

最好是能生成一个将exe所调用的文件和其本身都绑定到一起的exe文件。

 

在setup.py中只需要加一个bundle_files参数即可,官方说明如下:

 

Valid values for bundle_files are:

3 (default) don't bundle
2 bundle everything but the Python interpreter
1 bundle everything, including the Python interpreter

 

修改后的setup.py如下:

 

from distutils.core import setup
import py2exe

options = {"py2exe":  
                  {"compressed": 1,  
                    "optimize": 2,
                    "bundle_files": 1 
                   }  
                }

setup(console=['hello.py'],
          options = options,
          zipfile=None #不生成library.zip文件
)

 

运行下面这个命令,将显示py2exe命令的所有命令行标记:

 

python mysetup.py py2exe --help

 

分享到:
评论

相关推荐

    py2exe-0.6.9.win32-py2.7.zip

    py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。 py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win...

    py2exe-0.6.9.win32-py2.6

    py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。 py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,...

    Python使用py2exe打包程序介绍

    py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。 py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win...

    py2exe:一个distutils扩展,可从Python代码创建独立的Windows程序

    py2exe适用于Python 3 py2exe是distutils扩展,它允许从Python脚本构建独立的Windows可执行程序(32位和64位)。 支持官方开发周期中包含的Python版本(从3.6到3.9)。 py2exe可以构建控制台可执行文件和Windows...

    Python基础教程(第3版)-201802出版-文字版

    10 1.9 保存并执行程序 ...................................... 10 1.9.1 从命令提示符运行 Python脚本 .............................................. 12 1.9.2 让脚本像普通程序一样 ............... 12 1.9.3...

    python文件转为exe文件的方法及用法详解

     py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。  py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame...

    Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程

    wxPython是一款集成了Python的图形化类库的工具,而py2exe是一款将Python程序转换为exe可执行文件的程序,二者搭配可以轻松地在Windows中创建图形化程序,这里我们就来学习Windows中使用wxPython和py2exe开发Python的...

    python-exe-unpacker:用于解压缩和反编译从python代码编译的EXE的帮助程序脚本

    有几个YARA规则可用于确定可执行文件是否用python编写(此脚本还确认是否使用py2exe或pyinstaller创建了可执行文件)。 要求 Python 2.7或更高版本。 安装所需的所有依赖项: pip2 install --user -r requirements...

    Net2Scripting:Paxton Net2的Python脚本

    它最初是一个封闭源代码项目,使用py2exe创建可执行文件。 V4.0已开源,但仍使用py2exe。 从V5.0开始,它将是Python wheel包。 查看示例目录(github)以了解如何使用它。 请注意,在成为可安装的Python程序包后,...

    python顺序执行多个py文件的方法

    假如我要执行code目录下的python程序,假设该目录下有1.py,2.py,3.py,4.py四个文件,但是我想执行1.py,2.py,4.py,则可在该目录下创建一个python文件,代码如下: import os os.system&#40;python ./1.py&#41; os...

    PCA-OPLS

    用于使用auto-py-to-exe制作可执行程序的Python代码。 可以使用GUI执行过滤,PCA和OPLS-DA。 概述 使用rpy2包在python上运行基于R的代码。 R中使用的ropls软件包执行PCA和OPLS-DA 使用tkinter为程序创建GUI 用法...

    subpar:Subpar是用于创建独立的python可执行文件的实用程序。 它旨在与Bazel配合使用

    --build_python_zip允许您使用标准py_binary规则创建可执行的Python zip工件。 Subpar仍然支持某些用例--build_python_zip不支持:特别是,它允许您在不使用全局命令行标志的情况下构建特定目标的存档,并且在某些...

    SCON工具源码

    scons 命令的输出显示了可执行程序 helloscons2 如何由多个源文件而生成,以及在 SConstruct 中定义的 LIBS,LIBPATH 和 CCFLAGS 如何被使用。 可见,即使对于复杂的项目,SCons 的编译配置文件也很简单。除此之外,...

    python批量读取txt文件(读取指定行内容/统计关键词数量/读取指定关键词之间的内容/创建空白txt/统计行数和字符串数量)

    分为函数和界面代码,代码整体框架: # 1.编写读取指定行内容的函数 # 2.编写统计关键词数量的函数 # 3....# 4.编写创建空白txt的函数...可在b站看使用教程效果,链接如下: https://www.bilibili.com/video/BV1ZP411a7Uu/

    Python百度图片爬取器

    已经打包为exe可执行文件32/64位 为带有操作页面的windows程序(win7/10) 是很好的Pyqt5实战项目,自用也很方便 超值!只需1.9元!!!! 知识点: ·requests库 爬取 ·re库 正则表达式 ·pyqt5库 窗口搭建、各种...

    2019千峰Python超详细入门教程(百度云盘分享).docx

    │ │ 2、第一个python程序.py │ │ 3、注释.py │ │ 4、输出与输入.py │ │ 5、Python数据类型.py │ │ 6、标识符.py │ │ 7、变量与常量.py │ │ │ ├─file │ │ │ MindManager_64bit_17.2.208.exe │ ...

    Python编译为二进制so可执行文件实例

    2、创建你需要打包成二进制的python文件 test.py def hello(s): print(s) 3、创建一个setup.py文件,内如如下: from distutils.core import setup from Cython.Build import cythonize setup( name = ...

    KNUCouncil_Seat_Program:庆北国立大学学生代表会议席位计算程序

    exe文件:为方便起见,请在pyinstaller中使用-w -F选项创建一个可执行文件。 如何使用 1.下载文件 为了防止非专业人士使用git缺乏经验和不必要的文件下载,请使用下面的Google云端硬盘链接替换下载。 2.设定 下载后...

    i2cdriver:I2CDriver开源工具-Open source

    I2CDriver是用于从PC的USB端口控制任何I2C...要构建Windows安装程序,您首先需要构建两个可执行文件i2ccl.exe和i2cgui.exe然后使用NSIS脚本来创建安装程序。 在Linux上交叉编译i2ccl : cd c make -f win32/Makefile

Global site tag (gtag.js) - Google Analytics