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中如何导入类示例详解
Apr 17 Python
django获取from表单multiple-select的value和id的方法
Jul 19 Python
python使用正则表达式(Regular Expression)方法超详细
Dec 30 Python
Python中实现输入超时及如何通过变量获取变量名
Jan 18 Python
Python异步编程之协程任务的调度操作实例分析
Feb 01 Python
Python中zip()函数的解释和可视化(实例详解)
Feb 16 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
Mar 19 Python
Django Serializer HiddenField隐藏字段实例
Mar 31 Python
Python-openCV开运算实例
Jul 05 Python
python map比for循环快在哪
Sep 21 Python
Python基础之tkinter图形化界面学习
Apr 29 Python
用Python编写简单的gRPC服务的详细过程
Jul 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
用PHP开发GUI
2006/10/09 PHP
php 过滤危险html代码
2009/06/29 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
PHP中foreach()用法汇总
2015/07/02 PHP
php+ajax 实现输入读取数据库显示匹配信息
2015/10/08 PHP
基于PHP实现数据分页显示功能
2016/05/26 PHP
javascript vvorld 在线加密破解方法
2008/11/13 Javascript
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
js正则表达式中exec用法实例
2015/07/23 Javascript
JavaScript的instanceof运算符学习教程
2016/06/08 Javascript
jQuery替换节点用法示例(使用replaceWith方法)
2016/09/08 Javascript
JavaScript 继承详解(六)
2016/10/11 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
Vue兼容ie9的问题全面解决方案
2018/06/19 Javascript
在vue中多次调用同一个定义全局变量的实例
2018/09/25 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
es6中let和const的使用方法详解
2020/02/24 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
JS removeAttribute()方法实现删除元素的某个属性
2021/01/11 Javascript
Python中分数的相关使用教程
2015/03/30 Python
Python基于DES算法加密解密实例
2015/06/03 Python
Python用list或dict字段模式读取文件的方法
2017/01/10 Python
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
Matplotlib 绘制饼图解决文字重叠的方法
2020/07/24 Python
Madewell美德威尔美国官网:美国休闲服饰品牌
2016/11/25 全球购物
旅游业大学生创业计划书
2014/01/31 职场文书
森林防火标语
2014/06/23 职场文书
2015年秋季校长开学典礼致辞
2015/07/29 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
PHP正则表达式之RCEService回溯
2022/04/11 PHP
python使用shell脚本创建kafka连接器
2022/04/29 Python
java获取一个文本文件的编码(格式)信息
2022/09/23 Java/Android