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登录Dr.com思路以及代码分享
Jun 25 Python
在Django的session中使用User对象的方法
Jul 23 Python
Python实现字典的key和values的交换
Aug 04 Python
Python抓取框架 Scrapy的架构
Aug 12 Python
django-rest-framework 自定义swagger过程详解
Jul 18 Python
Python爬取腾讯视频评论的思路详解
Dec 19 Python
pytorch:model.train和model.eval用法及区别详解
Feb 20 Python
python 在threading中如何处理主进程和子线程的关系
Apr 25 Python
Python HTMLTestRunner库安装过程解析
May 25 Python
python中编写函数并调用的知识点总结
Jan 13 Python
Python实现byte转integer
Jun 03 Python
详解Python类和对象内容
Jun 22 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数组函数序列之array_key_exists() - 查找数组键名是否存在
2011/10/29 PHP
destoon复制新模块的方法
2014/06/21 PHP
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
php文件缓存类用法实例分析
2015/04/22 PHP
PHP闭包函数传参及使用外部变量的方法
2016/03/15 PHP
thinkphp框架page类与bootstrap分页(美化)
2017/06/25 PHP
基于Laravel 多个中间件的执行顺序详解
2019/10/21 PHP
经典的解除许多网站无法复制文字的绝招
2006/12/31 Javascript
Javascript图像处理—平滑处理实现原理
2012/12/28 Javascript
javascript异步编程的4种方法
2014/02/19 Javascript
手机端页面rem宽度自适应脚本
2015/05/20 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
2016/07/26 NodeJs
layui+jquery支持IE8的表格分页方法
2019/09/28 jQuery
基于postman获取动态数据过程详解
2020/09/08 Javascript
Python写的贪吃蛇游戏例子
2014/06/16 Python
Python实现删除当前目录下除当前脚本以外的文件和文件夹实例
2015/07/27 Python
Django contenttypes 框架详解(小结)
2018/08/13 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
哈萨克斯坦最大的时装、鞋子和配饰在线商店:Lamoda.kz
2019/11/19 全球购物
我有一个char * 型指针正巧指向一些int 型变量, 我想跳过它们。 为什么如下的代码((int *)p)++; 不行?
2013/05/09 面试题
override和overload的区别
2016/03/09 面试题
会计辞职信范文
2014/01/15 职场文书
个人贷款担保书
2014/04/01 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
创新社会管理心得体会
2014/09/12 职场文书
作文批改评语
2014/12/25 职场文书
检讨书范文
2015/01/27 职场文书
个人股份转让协议书范本
2015/01/28 职场文书
安全教育主题班会教案
2015/08/12 职场文书
《失物招领》教学反思
2016/02/20 职场文书
员工升职自我评价
2019/03/26 职场文书
HTML基础-标签分类(闭合标签,空标签,块级元素,行内元素,行级块元素,可替换元素)
2021/03/31 HTML / CSS
Jupyter notebook 输出部分显示不全的解决方案
2021/04/24 Python