1、首先下载py2exe:https://sourceforge.net/projects/py2exe/

2、假设要打包的python 文件放在C:\packet路径下

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

#-*-coding: UTF-8-*-
from distutils.core import setup
import py2exe
# Powered by ***
INCLUDES = []
options = {"py2exe" :
          {"compressed" : 1, #压缩 
           "optimize" : 2,
           "bundle_files" : 2, #所有文件打包成一个exe文件 
           "includes" : INCLUDES,  
           "dll_excludes": [ "MSVCP90.dll", "mswsock.dll", "powrprof.dll","w9xpopen.exe"]

           }

      }
setup(
    options = options,
    description = "问卷调查系统",
    zipfile=None, # 不生成zip库文件    
    windows = [{"script": "Logon.py", "icon_resources": [(1, "favicon.ico")] }]
  )

把这些文本存放在setup.py文件里面,把setup.py拷贝到C:\packet路径下,和要打包的python放在一块

3、运行脚本

打开命令行,运行如下脚本

C:\packet>C:\Python27\python setup.py py2exe

结果如下:

结果会在C:\packet路径下生成两个文件夹build和dist,

   在dist文件夹下面就会生成对应的exe文件:

  

   在打包过程中,可能exe图标没有没有显示自己设置的图标,原因可能是图标的问题。

  

   首先先介绍一下ico文件,这对于理解其解决方案有很大帮助。
 
   ico文件是windows下图片格式,我们看到的文件夹,执行文件等都有不同的图标显示,并且当我们切换视图模式(Thumbnails,Tiles,Icons, List,Details)时,文件的图标会以"不同"尺寸显示,确切的说,应该是不同的图标文件(尺寸亦不同)。ico文件里面可以有多个不同的图标文件以适应不同的视图模式,并且这些图标文件通常按尺寸大小的顺序存放。以windows XP/server 2003下支持的ico尺寸为16x16,32x32和48x48。vista/win7下则最多可以支持256x256。

问题关键在于ico文件中图标的顺序问题,XP和server 2003对顺序要求不高,无论是图标是按尺寸的正序还是倒序都可以正常显示,而然在vista/win7下确只能倒序。

Greenfish Icon Editor Pro,该工具不仅可以编辑图标文件,而且可以修改图标文件的顺序。下载地址:http://download.cnet.com/Greenfish-Icon-Editor-Pro/3001-2193_4-10773415.html?onid=2193

详细步骤如下:

首先:打开Greenfish Icon Editor Pro 软件并导入icon图片:

点击红色矩形框的icon选项->create icon from image 可以设置ico图片属性以及生成不同尺寸的icon图片,并调整从大到小的顺序如下图:

保存该图片,重新执行上面的C:\packet>C:\Python27\python setup.py py2exe命令就可以了

py2exe把python程序转换exe的更多相关文章

  1. python 转 exe -- py2exe库实录

    本文基于windows 7 + python 3.4 把python程序打包成exe,比较好用的库是py2exe 其操作步骤是: --> 编写python程序 --> 再额外编写一个导入了 ...

  2. Python打包EXE神器 pyinstaller

    最近由于项目需要,以前的python文件需要编辑为EXE供前端客户使用. 由于最早接触的是distutils,所以一开始准备使用distutils和py2exe搭配来进行python的exe化,也就是 ...

  3. python制作exe可执行文件的方法---使用pyinstaller

    python制作exe可执行文件的方法---使用pyinstaller   python生成windows下exe格式的可执行程序有三种可选方案: py2exe是大家所熟知的,今天要介绍pyinsta ...

  4. 打包python到exe

    #!/usr/bin/python # -*- coding:utf-8 -*- import distutils import py2exe from distutils.core import s ...

  5. 使用 py2exe 打包 Python 程序

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

  6. Python学习笔记:py2exe打包Python程序

    使用py2exe将一个Python程序打包成一个exe程序,这样Python程序也可以在没有安装Python的环境中运行Python程序了.使用这个工具需要写一个用于打包的setup.py文件(名称可 ...

  7. python生成.exe

    python生成.exe 1.在Anaconda Prompt终端输入pip install pyinstaller 2.输入python -m pip install pypiwin32 pytho ...

  8. 用py2exe打包成一个exe文件

    用py2exe打包成一个exe文件 http://blog.csdn.net/franktan2010/article/details/46514607

  9. python的exe反编译

    目录 python的exe反编译 方法一.使用archive_viewer.py提取pyc 方法二.使用pyinstxtractor.py提取pyc python的exe反编译 驱动人生样本为pyth ...

随机推荐

  1. Android_ViewFlipper

    xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...

  2. Linux系统常见的压缩命令

    *.Z compress 程序压缩的文件: //在当前的Linux主流版本中都已经默认没有支持该压缩命令了,因为gzip命令已经取代了compress命令了 *.gz gzip 程序压缩的文件: *. ...

  3. SQL的几道题目

    1.构造数据插入方案表t_project_finish表 a)将addtime更新为当前时间的前一天 首先想到的是addtime=addtime-1,然后就开始验证这个想法. 插入一行数据,包括主键和 ...

  4. Redis Cluster踩过的坑

    Redis Cluster踩过的坑请参考如下链接:http://www.iteye.com/blogs/subjects/Redis_Cluster_Devops

  5. Java获取 JVM 运行信息

    import java.lang.management.ClassLoadingMXBean; import java.lang.management.ManagementFactory; impor ...

  6. 使用jvisualvm和飞行记录器分析Java程序cpu占用率过高

    一.jvisualvm使用 JDK1.6中Oracle提供了一个新的JVM监控工具:jvisualvm.下面重点介绍如何在本地通过远程的方式打开Linux服务器上的jvisualvm. 1.Xmana ...

  7. 在orangepi-PC, ubuntu mini下使用usb wifi(rtl8188cu/rtl8192cu)

    本文章针对orangepi-pc下的ubuntu,分两部分,分别介绍在ubuntu14.04(trusty)mini下使用usb无线网卡的方式,以及怎样在ubuntu15.10(wily)mini下正 ...

  8. JAVA问问

    一.java中的类和方法 java是面向对象的 类就可以看做一个对象 属性是这个对象拥有什么 方法是这个对象可以做什么 Eg: 类:Person 属性:eyes mouth 方法:eat 解释: Pe ...

  9. VS 2015 (RC)下Entitiy Framework 升级后CodeFirst命令不能使用

    前阵子闲的没事吧自己项目的Entitiy Framework 升级到6.1.3了,然后紧接着问题来了: Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值. 所在位置 F:\S ...

  10. jquery数据验证插件(自制,简单,练手)

    一:最近项目中js数据验证比较多,为了统一风格,移植复用,于是顺手封装了Jquery的插件. (function($) { var defaults = { bugColor: '#FFCCCC', ...