Python打包可执行文件的方法详解


Posted in Python onSeptember 19, 2016

本文实例讲述了Python打包可执行文件的方法。分享给大家供大家参考,具体如下:

Python程序需要依赖本机安装的Python库,若想在没有安装Python的机器上运行,则需要打包分发,目前有两个比较好用的工具:PyInstaller和py2exe。其中py2exe应用在windows下,而PyInstall则可应用windows、Linux以及Mac OS X上。

这里只贴一段py2exe打包的实例代码。(py2exe下载地址 )

#coding=utf-8
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 (
  options = options,
  zipfile=None,  #不生成library.zip文件
  console=[{"script": "main.py", "icon_resources": [(1, "Q.ico")] }]#源文件,程序图标
)

假如上面的源码保存为mysetup.py,则打包命令为: python mysetup.py py2exe 。

PS:使用Enigma Virtual Box同样可以让Py2exe打包出的单文件更完美。Enigma Virtual Box可点击此处本站下载:https://3water.com/softs/425055.html

两个用过的实例:

(1)、后台运行

#coding=utf-8
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 (
  options = options,
  zipfile=None,  #不生成library.zip文件
  windows=[{"script": "main.py" }]#源文件
)

(2)、不得不有控制台窗口,且不能打包为一个exe文件。(walker是因为调用了浏览器)

#coding=utf-8
from distutils.core import setup
import py2exe
setup(
  console = [{'script': "main.py"}],
  options={
      "py2exe":{
          "skip_archive": True,
          "unbuffered": True,
          "optimize": 2
      }
  }
)

PS:关于使用PyInstalle把Python脚本打包成exe文件,可参考本站文章:https://3water.com/article/88235.htm

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中mechanize库的简单使用示例
Jan 10 Python
Python中字符串对齐方法介绍
May 21 Python
Python中getattr函数和hasattr函数作用详解
Jun 14 Python
django实现同一个ip十分钟内只能注册一次的实例
Nov 03 Python
python opencv检测目标颜色的实例讲解
Apr 02 Python
python 在屏幕上逐字显示一行字的实例
Dec 24 Python
Python实现二维曲线拟合的方法
Dec 29 Python
python在回调函数中获取返回值的方法
Feb 22 Python
使用Python实现跳一跳自动跳跃功能
Jul 10 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
May 15 Python
python异常处理之try finally不报错的原因
May 18 Python
python神经网络 使用Keras构建RNN训练
May 04 Python
Python实现拷贝多个文件到同一目录的方法
Sep 19 #Python
利用Python画ROC曲线和AUC值计算
Sep 19 #Python
Python文件与文件夹常见基本操作总结
Sep 19 #Python
Python实现批量更换指定目录下文件扩展名的方法
Sep 19 #Python
Python按行读取文件的实现方法【小文件和大文件读取】
Sep 19 #Python
Python遍历目录并批量更换文件名和目录名的方法
Sep 19 #Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 #Python
You might like
关于crontab的使用详解
2013/06/24 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
用YUI做了个标签浏览效果
2007/02/20 Javascript
js 浮动层菜单收藏
2009/01/16 Javascript
JQuery之拖拽插件实现代码
2011/04/14 Javascript
javascript 上下banner替换具体实现
2013/11/14 Javascript
JavaScript简单修改窗口大小的方法
2015/08/03 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
jquery实现列表上下移动功能
2016/02/25 Javascript
浅谈Vue SSR 的 Cookies 问题
2017/11/20 Javascript
VUEX-action可以修改state吗
2019/11/19 Javascript
JS实现手写 forEach算法示例
2020/04/29 Javascript
基于vue实现简易打地鼠游戏
2020/08/21 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
caffe binaryproto 与 npy相互转换的实例讲解
2018/07/09 Python
Python实现登陆文件验证方法
2018/10/06 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
2019/05/04 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
2019/05/13 Python
Python实现SMTP邮件发送
2020/06/16 Python
HTML5的Video标签有部分MP4无法播放的问题解析(多图)
2017/08/18 HTML / CSS
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
捷克家具销售网站:SCONTO Nábytek
2020/01/02 全球购物
类和结构的区别
2012/08/15 面试题
汽修专业学生自我鉴定
2013/11/16 职场文书
实习生的自我评价
2014/01/08 职场文书
早餐连锁店计划书
2014/01/08 职场文书
护理助产毕业生的求职信
2014/03/02 职场文书
大学生活动总结模板
2014/07/02 职场文书
医院合作协议书
2014/08/19 职场文书
工作收入证明模板
2014/10/10 职场文书
2015年度合同管理工作总结
2015/05/22 职场文书
2016企业先进集体事迹材料
2016/02/25 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书
Python趣味挑战之教你用pygame画进度条
2021/05/31 Python
Django中session进行权限管理的使用
2021/07/09 Python