`
icyheart
  • 浏览: 777659 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

将Python程序打包成可执行文件

阅读更多

Python编程语言是一款功能强大的免费开源的通用型计算机程序应用语言,对于经验丰富的开发人员来说,掌握这样一款语言在其程序开发中是一个比较重要的选择。我们今天就先来了解一下python打包方法的相关应用。

 

一、简介

py2exe是一个将Python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装Python而在windows系统上运行这个可执行程序。

py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32com client和server,和其它的独立程序。py2exe是发布在开源许可证下的。

Python打包方法步骤二、安装py2exe

从http://prdownloads.sourceforge.net/py2exe下载并运行与你所安装的Python对应的py2exe版本的 installer,这将安装py2exe和相应的例子;这些例子被安装在lib\site-packages\py2exe\samples目录下。

Python打包方法步骤三、py2exe的用法

如果你有一个名为myscript.py的Python脚本,你想把它转换为运行在windows上的可执行程序,并运行在没有安装Python的 windows系统上,那么首先你应写一个用于发布程序的设置脚本例如mysetup.py,在其中的setup函数前插入语句import py2exe 。 mysetup.py示例如下:

# mysetup.py   
from distutils.core import setup   
import py2exe   

setup(console=["myscript.py"]) 

 

然后按下面的方法运行mysetup.py: Python mysetup.py py2exe

上面的命令执行后将产生一个名为dist的子目录,其中包含了myscript.exe,Python24.dll,library.zip这些文件。

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

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

1、一个或多个exe文件。

2、Python##.dll。

3、几个.pyd文件,它们是已编译的扩展名,它们是exe文件所需要的;加上其它的.dll文件,这些.dll是.pyd所需要的。

4、一个library.zip文件,它包含了已编译的纯的Python模块如.pyc或.pyo
上面的mysetup.py创建了一个控制台的myscript.exe程序,如果你要创建一个图形用户界的程序,那么你只需要将mysetup.py中的console=["myscript.py"]替换为windows=["myscript.py"]既可

py2exe一次能够创建多个exe文件,你需要将这些脚本文件的列表传递给console或windows的关键字参数。如果你有几个相关联的脚本,那么这是很有用的。
运行下面个命令,将显示py2exe命令的所有命令行标记。 Python mysetup.py py2exe --help

Python打包方法步骤四、指定额外的文件

一些应用程序在运行时需要额外的文件,诸如配置文件、字体、位图。

如果在安装脚本中用data_files可选项指定了那些额外的文件,那么py2exe能将这些文件拷贝到dist子目录中。data_files应包含一个元组(target-dir, files)列表,其中的files是这些额外的文件的列表。

示例如下:

# mysetup.py   
from distutils.core import setup   
import glob   
import py2exe   

setup(console=["myscript.py"],   


data_files=[("bitmaps",   

["bm/large.gif", "bm/small.gif"]),   
("fonts",   
glob.glob("fonts\\*.fnt"))],   
) 

 说明:data_files选项将创建一个子目录dist\bitmaps,其中包含两个.gif文件;一个子目录dist\fonts,其中包含了所有的.fnt文件。

Python打包方法步骤五、Windows NT services

你可以通过传递一个service关键字参数给setup函数来建造Windows NT services ,这个service参数的值必须是一个Python模块名(包含一service类)的列表。 示例如下:

# mysetup.py   
from distutils.core import setup   
import py2exe   

setup(service=["MyService"])  

 

所建造的可执行的service是可以通过在其后跟一定的命令行参数标记来自行安装和卸载的。你可以通过在这个可执行的service(exe)后跟一-help参数来得到更多的帮助。

Python打包方法步骤六、COM servers

你可以通过传递一个com_server 关键字参数给setup函数来建造Windows NT services ,这个service参数的值必须是一个Python模块名(包含一个或多个COM server 类)的列表。
示例如下:

# mysetup.py   
from distutils.core import setup   
import py2exe   

setup(com_server=["win32com.server.interp"])  

 默认情况下,DLL和EXE servers被建造,你不需要它们的话你可以简单的删除它们。

 

自己的例子如下:

from distutils.core import setup

import py2exe



includes = ["encodings", "encodings.*"]    
#要包含的其它库文件

options = {"py2exe":

    {"compressed": 1, #压缩
     "optimize": 2,
     "ascii": 1,
     "includes":includes,
     "bundle_files": 1 #所有文件打包成一个exe文件 
     }
    }
setup(
    version = "0.1.0",   
    description = "search file",   
    name = "search file",      
    options = options,      
    zipfile=None,   #不生成library.zip文件
    windows=[{"script": "MessageBox.py", "icon_resources": [(1, "player.ico")] }]#源文件,程序图标
    )

 MessageBox.py如下:

import win32api
import win32con
win32api.MessageBox(0,'I'm sucre,'Python',win32con.MB_OK)

 进入cmd,来到程序所在目录下输入如下代码:

python setup.py py2exe

 

目前还有一个问题,当输出的内容为中文时,会出现乱码

0
0
分享到:
评论

相关推荐

    在Mac OS X系统上打包Python程序.docx

    PyInstaller 是一个非常popular的 Python 程序打包工具,可以将 Python 程序打包成可执行文件。PyInstaller 提供了多种打包方式,包括窗口模式和控制台模式。可以使用 PyInstaller 将 Python 程序打包成可执行文件,...

    Python程序打包成exe可执行文件的方法探究.pdf

    为了使Python程序能够在没有解释器的平台上运行,就需要将Python程序打包成exe可执行文件。本文将探究Python程序打包成exe可执行文件的方法,以期为Python程序的深入应用提供支持。 二、Python语言的特点 Python...

    如何将Python脚本打包成可执行的exe文件#520表白代码

    如何将Python脚本打包成可执行的exe文件#520表白代码 我们开发的脚本一般都会用到一些第三方包,可能别人也需要用到我们的脚本,如果我们将我们的xx.py文件发给他,他是不能直接用的,他还需要安装python解释器,...

    Python程序打包.pdf

    Python程序打包有多种方式,包括.py、.pyc和可执行文件等。 .py文件:是Python脚本文件,需要用户自行安装Python和依赖库。这种方式适合开源项目或源码不重要的项目。 .pyc文件:是Python解释器可以识别的二进制...

    赋予你的Python项目新生命:打包为独立可执行文件(exe)的简单步骤

    但是,如果你想将你的Python代码部署到其他计算机上,或者想在没有安装Python解释器的机器上运行你的程序,那么就需要将Python代码打包成可执行文件。下面是一些关于如何将Python代码打包成exe文件的方法。 1. ...

    Python程序打包成exe可执行文件的方法探究.zip

    本篇将深入探讨如何将Python程序打包成exe可执行文件。 首先,我们需要了解Python的编译和打包工具。Python源代码是通过解释器执行的,而不能直接作为可执行文件运行。为了转换为exe,我们可以使用第三方工具,如...

    将Python程序打包成安装文件分享给小伙伴.zip

    为了解决这个问题,我们可以将Python程序打包成可执行的安装文件,这样用户只需双击即可轻松安装和运行。本篇将详细介绍如何将Python程序打包成安装文件,并分享给其他人。 首先,我们需要知道的是,Python程序通常...

    如何封装一个带传参的python程序成可执行文件

    例如,`pyinstaller`是一个流行的打包工具,它可以将Python程序打包成独立的可执行文件,支持Windows、Linux和OSX操作系统。而且,`pyinstaller`支持单文件模式,这使得发布和分发程序变得非常方便。 使用`...

    python实例62-将Python程序打包成安装文件分享给小伙伴.rar

    在Python编程中,有时我们需要将编写好的程序打包成可执行文件,以便于分享给其他没有安装Python环境的用户。这个实例“python实例62-将Python程序打包成安装文件分享给小伙伴”就是针对这一需求而设计的。我们将...

    Python脚本文件打包成可执行文件的方法

    将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe、cx_freeze等 【工具:py2exe】 安装py2exe 安装该工具很简单: ...

    python 代码生成可执行文件

    首先,我们要介绍的是PyInstaller,这个工具正是用于将Python脚本打包成可执行文件的。在提供的压缩包文件中,我们看到"pyinstaller-1.5.zip",这是PyInstaller的一个较旧版本。PyInstaller是一个开源项目,它能够...

    将Python程序打包成安装文件分享给小伙伴.rar

    为了方便他们使用,我们可以将Python程序打包成安装文件(通常为.exe格式),这样用户只需点击即可运行,无需安装Python环境或管理依赖库。本指南将详细解释如何将Python程序转换为可执行的安装文件。 1. **了解...

    python 开发解决打包使用pyecharts模块的程序十出现不显示图标的问题demo源码+使用说明.zip

    然而,由于pyecharts依赖于前端库如jQuery和echarts,所以在将Python程序打包成可执行文件(如exe或app)时,可能会因为静态资源(如JavaScript和CSS文件)的路径问题导致图标无法显示。本文将详细介绍如何解决这个...

    使用python开发windows桌面程序参考.pdf

    描述中提到了在Python环境下开发此类程序所需的几个关键工具,包括Boa Constructor(一个基于wxWidgets的集成开发环境)、wxPython(提供C++编写的Windows组件库)和py2exe(用于将Python程序打包成可执行文件的工具...

    Python程序打包成windows安装文件资源

    本篇将详细讲解如何使用Python2.7、py2exe、PyInstaller-2.1以及Inno Setup Compiler将Python程序打包成Windows安装文件。 首先,你需要确保你的开发环境是Python2.7。虽然现在Python3已经广泛使用,但某些库或工具...

    Python项目源码62_将Python程序打包成安装文件分享给小伙伴.rar

    为了方便用户安装和使用,我们可以将Python程序打包成一个可执行的安装文件,例如Windows下的.exe文件。这个“Python项目源码62_将Python程序打包成安装文件分享给小伙伴.rar”压缩包就是关于这个主题的资源集合,它...

    python自动打包成单文件工具

    为了解决这个问题,Python社区开发了一些工具,用于将Python程序打包成独立的可执行文件(如Windows平台上的.exe文件),使得用户无需安装Python环境也能运行程序。本篇将详细介绍如何使用“Python自动打包成单文件...

    Python-用Pyinstaller打包发布exe应用

    Pyinstaller是一个可以将Python程序打包成可执行文件的跨平台工具,支持Windows、Linux和Mac OS X操作系统。 首先,Pyinstaller的安装非常简单。通常情况下,我们使用pip这个Python的包管理工具来安装Pyinstaller。...

Global site tag (gtag.js) - Google Analytics