Python脚本如何生成Windows可执行文件.exe

时间 2014-10-12 22:23:17 书影 - 最新日志 原文  http://bookshadow.com/weblog/2014/10/12/how-to-create-windows-executable-exe-from-python-script/

Python是一种简单而强大的编程语言,适用于编写脚本,甚至于应用程序的开发。Python可用的各种GUI包使得利用Python编写全功能的应用变为可能。这很好,但你有没有想过将你编写的Python脚本转化为可执行文件?这似乎是一个很赞的主意,有许多原因!你可以在没有Python解释器的情况下重新部署你的应用。终端用户不需要在他的机器上安装Python。你可以将你的应用闭源(很不幸)等等……这篇文章可以告诉你如何从你的Python脚本生成win32可执行文件。

Python is a simple and powerful language for scripting and even application development. Various GUI packages available for Python makes it suitable for developing full fledged applications in python. Ok that is fine, but ever thought of creating an executable file from the python script you wrote? This seems to be a nice idea, there are many reasons why! You can redistribute your application without python. The end user needn't to install python on his machine. You can make your application closed source (unfortunate) etc... Read on this article to find how you can create win32 executables from your Python script.

This tutorial will give step by step instruction on how to create Win32 executable from Python script. Make sure that the following are installed on your system.

这篇教程将会一步一步的介绍如何从Python脚本创建Win32可执行文件。请确保你的系统里已经安装了下面的程序。

Python. Get Python from http://www.python.org/download/ and install on your machine.

py2exe. Get py2exe from http://www.py2exe.org/

命令行程序

下面的示例代码会在命令行里打印一行标题,以及从1到10的数字。

test.py

print "Python script to exe test program"count = 0while count < 10:
print "count = " + str(count) +"\n"
count = count + 1

把这段代码保存在test.py(或者别的以.py为后缀的)文件中。用Python解释器首先测试并成功运行这段代码。要完成这一步,只需要在命令行里输入“python test.py”。你应当在命令行里看到下面的输出。

我们的Python脚本已经准备好了。现在我们还需要创建一个setup脚本。所谓的setup脚本其实就是另外一个Python脚本,在这个脚本里我们导入py2exe包,并从distutils包里导入setup脚本。此外,我们在这个文件里指定哪一个脚本作为可执行程序的入口点。创建一个新文件命名为setup.py并把下面的代码粘贴进去。

setup.py

from distutils.core import setup
import py2exesetup(console=['test.py'])

这段代码简单明了。在setup.py中导入setup和py2exe然后以入口点脚本的名字为参数调用setup()函数。现在可以运行这个脚本并创建可执行文件了。创建可执行文件时,在命令提示符里运行“python setup.py py2exe”。你可以在命令行里看到许多输出。最后你可以看到下图所示的输出内容。

构建可执行文件的过程到此结束。现在你应该可以再\dist子目录下看到test.exe文件。将dist子目录移动到合适的位置然后运行test.exe,你可以看到下面的命令行输出。

GUI应用程序

我们已经成功将Python脚本转化为一个可执行命令行应用程序。下面我们来试试从Python脚本创建一个GUI可执行程序吧。使用Python创建GUI时,我们会用到Tkinter(Tk Interface)作为GUI工具包。从一个Tkinter-Python GUI脚本创建可执行文件非常直观。只要遵照我们在生成命令行程序时的步骤即可创建一个GUI可执行程序。

创建一个新文件,将下面的代码粘贴进去,保存并命名为“gui.py”。

gui.py

from Tkinter import *frmMain = Tk()label = Label(frmMain, text="Welcome to py2exe!")
label.pack()frmMain.mainloop()

这个代码也很直观,我们导入Tkinter工具包,创建主窗体,创建一个标签并将其调整为内容的大小并进入程序的主循环。试着在命令行里输入“python gui.py”来运行这段脚本。如果一切顺利,你应该看到下面的窗口。

目前为止一切顺利。现在让我们看看我们怎样从脚本构建windows可执行程序。创建一个新文件命名为setup.py并将下面的代码粘贴进去。

setup.py

from distutils.core import setup
import py2exesetup(console=['gui.py'])

构建可执行文件时,在命令提示符里运行“python setup.py py2exe”。一旦构建过程完成,移动到\dist子目录下并通过在命令行里键入“gui.exe”来运行这个可执行文件。现在你应该看到与前面用Python脚本创建的一样的窗体。

Python脚本如何生成Windows可执行文件.exe相关推荐

  1. linux运行python脚本_将Python脚本文件包装成可执行文件

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

  2. python脚本部署为Windows服务

    python脚本部署为Windows服务 基础需求环境:python环境(不会安装建议ctrl+w, 你已经退出接下来的教程了)windows环境(需要了解环境变量的配置和服务位置) 好了,开始吧. ...

  3. python脚本批量生成数据

    在平时的工作中,经常会遇到造数据,特别是性能测试的时候更是需要大量的数据.如果一条条的插入数据库或者一条条的创建数据,效率未免有点低.如何快速的造大量的测试数据呢?在不熟悉存储过程的情况下,今天给大家 ...

  4. 【python教程入门学习】通过运行python脚本来更改Windows背景

    通过运行python脚本来更改Windows背景 在我们开始之前,一定要注意这篇文章只针对Windows用户!对于那些使用Windows的人来说,这是一个有趣的想法. 如果您想使用python更改桌面 ...

  5. python生成yaml_使用python脚本自动生成K8S-YAML的方法示例

    1.生成 servie.yaml 1.1.yaml转json service模板yaml apiVersion: v1 kind: Service metadata: name: ${jarName} ...

  6. python生成yaml_使用python脚本自动生成K8S-YAML

    使用python脚本自动生成K8S-YAML 1.生成 servie.yaml 1.1.yaml转json service模板yaml apiVersion: v1 kind: Service met ...

  7. 【Python】pyinstaller模块将py文件打包为windows可执行文件exe

    python脚本如果在没有安装python的机器上不能运行,所以将脚本打包成exe文件,降低脚本对环境的依赖性,同时运行更加迅速.当然打包的脚本似乎不是在所有的win平台下都能使用,win7有一部分不 ...

  8. python代码变成运行程序_用Python脚本转换成windows的可执行程序

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

  9. python脚本批量生成雷达回波数据集

    批量生成雷达回波数据集 目前,没有找到探地雷达回波图的开源数据集,鉴于实验成本限制,采用gprMax v3.1.5仿真生成. 这里参照两个博主: 链接1:https://blog.csdn.net/g ...

最新文章

  1. 最喜欢的 jQuery 插件
  2. 新建arcgis api for android 项目失败
  3. HTML与CSS基础知识补遗(一)
  4. boost::signals2::signal_type相关的测试程序
  5. 5.js模式-职责链模式
  6. Python __dict__和vars()
  7. bat 批处理获取时间语法格式
  8. Linux学习:第一章-Linux简介
  9. mvc图片上传到服务器
  10. android四大组件之Activity以及常见的view处理
  11. PHP - Redis实现入队出队
  12. tensorflow Keras的搭建训练步骤
  13. dw相对路径怎么改_了解 Dreamweaver 模板中的路径
  14. linux系统bcast,关于linux的Bcast的疑问.请大家帮忙看看,谢谢啦
  15. HTML表格竖边框线,Table表格横竖线实现Css
  16. 图片验证码不显示解决方案
  17. sap服务器迁移性能问题,专家详解SAP数据迁移的六个方法
  18. 使用quaggaJS识别图片中的条形码
  19. JavaSE-Adventure(VII) Java OOP 面向对象程序设计
  20. 动态壁纸,视频特效- Android

热门文章

  1. tableau暂时不支持m1芯片!期待未来!
  2. 关于StreamReader的构造函数
  3. [LUOGU] P4342 [IOI1998]Polygon
  4. 左耳朵耗子:谈谈Go语言、Docker和新技术
  5. 在ubuntu16.04.1配置qemu-img,qemu-nbd
  6. unity节目素材ProceduralMaterial采用
  7. 未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集...
  8. 企业级UML/MDA工具Trufun 2007系列发布!
  9. nyoj985带通配符的数
  10. 爬虫---Beautiful Soup 通过添加不同的IP请求