py2exe可以将python脚本转换成在Windows上的可独立执行.exe程序的工具。可以让Python脚本在没有安装python工具的Windows系统上运行,方便脚本共享。

操作环境

python2.7.12+Win32

Py2exe安装方法

1、py2exe模块下载。下载路径:py2exe官网,注意py2exe下载版本需要和本地的操作系统位数以及安装的python版本保持一致。

2、开始py2exe程序安装,安装方法按照提示默认安装即可。

Py2exe打包操作步骤

1、进入python程序安装目录,如C:\Python27

2、在Python安装路径(C:\Python27)创建一个setup.py文件。假设待转换的pyton脚本名为hello.py,脚本放置在Python安装路径下(C:\Python27)。示例如下:

c:\Python27>type 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)

参数说明:

(1)  bundle_files有效值为(3:不打包,默认值,2:打包,但不打包Python解释器,1:打包,包括Python解释器)

(2)  zipfile的有效值为(不填(默认): 生成一个library.zip文件,None:把所有东西打包进.exe文件中)

3、打开cmd窗口,切换到python的安装目录(C:\Python27),并执行命令python setup.py py2exe

c:\Python27>python setup.py py2exe
running py2exe
*** searching for required modules *** ............ *** copy dlls ***
copying c:\Python27\lib\site-packages\py2exe\run.exe -> c:\Python27\dist\hello.exe *** binary dependencies ***
Your executable(s) also depend on these dlls which are not included,
you may or may not need to distribute them. Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system. USER32.dll - C:\Windows\system32\USER32.dll
SHELL32.dll - C:\Windows\system32\SHELL32.dll
ADVAPI32.dll - C:\Windows\system32\ADVAPI32.dll
WS2_32.dll - C:\Windows\system32\WS2_32.dll
GDI32.dll - C:\Windows\system32\GDI32.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll

4、在C:\Python27\dist目录下查看生成的可执行文件hello.exe。hello.exe即为打包后的可直接在windows上运行的程序。

c:\Python27\dist>dir
驱动器 C 中的卷是 系统
卷的序列号是 0000-0A6F c:\Python27\dist 的目录 2017/06/11 20:39 <DIR> .
2017/06/11 20:39 <DIR> ..
2017/06/11 20:39 3,960,694 hello.exe
2016/06/27 15:20 111,616 w9xpopen.exe
2 个文件 4,072,310 字节
2 个目录 17,607,745,536 可用字节

5、打包完成。

使用py2exe转换python文件为可执行程序的更多相关文章

  1. 用py2exe将python文件转换成exe可执行程序

    1.首先需要安装py2exe模块,下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/ 然后用pip install 命令安装py2exe模块,如果你用的py ...

  2. 转换python脚本为可执行程序的方式

    背景: 部分工具使用python脚本编写,而目标服务器,没有安装python包,导致使用工具不方便,还需要另外安装python. 目前主要有2个主流软件,可做此类转换,把对应工具脚本转换为exe: p ...

  3. 使用py2exe将python脚本转换成exe可执行文件

    Python(wiki en  chs)是一门弱类型解释型脚本语言,拥有动态类型系统和垃圾回收功能,支持多种编程范式:面向对象.命令式.函数式和过程式编程. 由于Python拥有一个巨大而广泛的标准库 ...

  4. paip.元数据驱动的转换-读取文件行到个list理念 uapi java php python总结

    paip.元数据驱动的转换-读取文件行到个list理念 uapi java php python总结 #两个思路 1.思路如下:使用file_get_contents()获取txt文件的内容,然后通过 ...

  5. Python文件.py转换为.exe可执行程序,制作.exe文件图标

    当大家想要将自己写的Python程序对别人进行展示的时候,你是否还是打开你的Pycharm进行运行展示? 假如是专业的人士看你的代码,一眼就能看懂你的代码,而其实我们可以不需要给代码,利用pyinst ...

  6. 使用python调用wps v9转换office文件到pdf

    #!/usr/bin/python2.6 # -*- coding: utf-8 -*- # pip install timeout-decorator import os import win32c ...

  7. 使用 py2exe 打包 Python 程序

    上回在<使用 PyInstaller 打包 Python 程序>中,我们介绍了使用 PyInstaller 对 Python 程序进行打包,今天带大家认识一个新的工具:py2exe. 接下 ...

  8. py2exe把python程序转换exe

    1.首先下载py2exe:https://sourceforge.net/projects/py2exe/ 2.假设要打包的python 文件放在C:\packet路径下 如 果你有一个名为myscr ...

  9. 树莓派(Raspbian系统)中使用pyinstaller封装Python代码为可执行程序

    一.前言 将做好的Python软件运行在树莓派上时,不想公开源码,就需要对文件进行封装(或称打包),本文主要介绍使用pyinstaller封装Python代码为可执行程序. Python是一个脚本语言 ...

随机推荐

  1. 本机无法访问虚拟机里面的nginx的80端口

    在虚拟机VMware上装好了centos6.9,并配好了nginx,但是本机就是无法访问.具体情况如下1.本机能ping通虚拟机2.虚拟机也能ping通本机3.虚拟机能访问自己的web4.本机无法访问 ...

  2. Android Gradle插件(plugin)版本(version)与Gradle、SDK Build Tools版本关系

    具体关系如下图: 比如,Android Studio 2.0发布,其中有个新功能“Instant Run”,需要Android Gradle Plugin版本2.0.0以上,那么我们项目的.gradl ...

  3. springboot+mybatis整合(单元测试,异常处理,日志管理,AOP)

    我用的事IDEA,jdk版本是1.7.新建项目的时候这个地方的选择需要注意一下,springboot版本是1.5的,否则不支持1.7的jdk pom.xml <dependency> &l ...

  4. (转)C# WebApi 异常处理解决方案

    原文地址:http://www.cnblogs.com/landeanfen/p/5363846.html 一.使用异常筛选器捕获所有异常 我们知道,一般情况下,WebApi作为服务使用,每次客户端发 ...

  5. Java 4- Java 变量类型

    Java 变量类型 在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ...

  6. CS229 6.1 Neurons Networks Representation

    面对复杂的非线性可分的样本是,使用浅层分类器如Logistic等需要对样本进行复杂的映射,使得样本在映射后的空间是线性可分的,但在原始空间,分类边界可能是复杂的曲线.比如下图的样本只是在2维情形下的示 ...

  7. HTML5和CSS3的一些学习记录

    1.引述块级文本的标签(blockquote): <blockquote cite="http://www.marktwainbooks.edu/"> <p> ...

  8. css动画animation-keyframes

    随着css3的流行,现在很多可以使用css3实现的动画效果,基本上就选择css3实现,尤其是在移动端的(移动端对css3的支持度相对比较高,PC端有很多IE8及以下的浏览器拖着后腿呢). 最近做了一个 ...

  9. jquery IE中加载xml

    $.ajax({ url: 'xml/myXML.xml', dataType: ($.browser.msie) ? "text" : "xml", time ...

  10. SUSE 图形化界面/How to enable/disable AS Java Safe Mode

    vncserver 不同的用户使用不同的图形化环境变量 比如sidadm用户要启动configtools.sh 需要sidadm来启动图形化 如何将java切换成safe mode 2125707 - ...