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不带重复的全排列代码
Aug 13 Python
Python使用multiprocessing创建进程的方法
Jun 04 Python
Python装饰器实现几类验证功能做法实例
May 18 Python
Python 多线程Threading初学教程
Aug 22 Python
Python分支结构(switch)操作简介
Jan 17 Python
Python 分享10个PyCharm技巧
Jul 13 Python
python实现把二维列表变为一维列表的方法分析
Oct 08 Python
Python实现检测文件的MD5值来查找重复文件案例
Mar 12 Python
Python利用Xpath选择器爬取京东网商品信息
Jun 01 Python
Python while true实现爬虫定时任务
Jun 08 Python
Python模块zipfile原理及使用方法详解
Aug 04 Python
python实现Thrift服务端的方法
Apr 20 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
PHP测试成功的邮件发送案例
2015/10/26 PHP
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
js类中的公有变量和私有变量
2008/07/24 Javascript
jquery封装的对话框简单实现
2013/07/21 Javascript
js中onload与onunload的使用示例
2013/08/25 Javascript
jquery教程ajax请求json数据示例
2014/01/13 Javascript
jquery实现人性化的有选择性禁用鼠标右键
2014/06/30 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
JavaScript中的setUTCDate()方法使用详解
2015/06/11 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
BootStrap表单时间选择器详解
2017/05/09 Javascript
JS实现的简单表单验证功能完整实例
2017/10/14 Javascript
vue.js实现点击后动态添加class及删除同级class的实现代码
2018/04/04 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
vue界面发送表情的实现代码
2020/09/11 Javascript
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
python爱心表白 每天都是浪漫七夕!
2018/08/18 Python
tensorflow使用神经网络实现mnist分类
2018/09/08 Python
Django 开发环境配置过程详解
2019/07/18 Python
python读文件的步骤
2019/10/08 Python
基于django2.2连oracle11g解决版本冲突的问题
2020/07/02 Python
python如何导出微信公众号文章方法详解
2020/08/31 Python
CSS3制作气泡对话框的实例教程
2016/05/10 HTML / CSS
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
css3类选择器之结合元素选择器和多类选择器用法
2017/03/09 HTML / CSS
英国电子专家:maplin
2019/09/04 全球购物
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
通信工程毕业生求职信
2013/11/16 职场文书
高三地理教学反思
2014/01/11 职场文书
经销商订货会主持词
2014/03/27 职场文书
质量保证书范本
2014/04/29 职场文书
2014年秋季开学典礼主持词
2014/08/02 职场文书
护士节演讲稿开场白
2014/08/25 职场文书
2014年财务部工作总结
2014/11/11 职场文书
小学生节水倡议书
2015/04/29 职场文书
校长新学期致辞
2015/07/30 职场文书