python打包工具 cx_Freeze介绍
原理
Python 脚本在装有 Python 的系统中可以直接双击运行,但绝大多数普通用户并没有配置此类环境,而编译为可执行二进制文件后,用户无需预先安装 Python 及依赖库即可像运行普通程序一样运行您的代码。
有相当数量的 Python 库可以实现此类转换,著名的有 py2exe、py2app、PyInstaller、cx_Freeze 等。因此,cx_Freeze 属于目前可用的最佳方案之一。
1、下载
下载链接:https://pypi.org/project/cx_Freeze/5.0.2/#files
(离线)官网https://pypi.python.org/pypi/cx_Freeze下载相应的whl
参考自己的python版本下载
2、安装
安装成功后还需要进一步配置
进入到python环境Scripts目录下:
cmd切换到当前目录,执行python cxfreeze-postinstall 命令,成功后会出现cxfreeze.bat文件
运行 cxfreeze -h,出现如下截图安装成功

3、使用
3.1比较简单的小程序
新建一个python程序,例如:hello.py
在“C:\Python33\Scripts”目录(也就是cxfreeze命令所在的文件目录)下运行:
cxfreeze D:/hello.py --target-dir E:/demo
成功执行后在E:/demo目录下可找到hello.exe文件
3.2 生成可安装包文件
新建setup.py文件,输入以下代码
import sys
import os
from cx_Freeze import setup, Executable os.environ['TCL_LIBRARY'] = r'D:\Python34\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'D:\Python34\tcl\tk8.6' # base 实际上默认就是 None,即命令行程序,除非需要构建图形界面程序,否则配置了反而是画蛇添足,这里不配置
base = None
# 判断Windows系统
# if sys.platform == 'win32':
# base = 'Win32GUI' executables = [
Executable(
# 工程的 入口
'app_cpu_mem_test.py',
# 生成 的文件 名字
targetName='app_cpu_mem_test.exe',
# 生成的EXE的图标 #图标, 32*32px
icon='',
base=base)
] include_files = [
r'D:\Python34\DLLs\tcl86t.dll',
r'D:\Python34\DLLs\tk86t.dll'
] buildOptions = dict(
# 依赖的包
packages=[],
excludes=[],
# 额外添加的文件
include_files=include_files,
) setup(
# 产品名称
name='app_cpu_mem_test',
# 版本号
version='1.0',
# 产品说明
description='测试',
options=dict(build_exe=buildOptions),
executables=executables)
cmd窗口执行
python setup.py bdist_msi

执行成功之后,将在当前目录下生成build和dist两个文件。
其中,dist文件夹中包含hello.py程序的安装包文件
build文件夹下包含main.py程序的可执行文件

参考文档:https://zhuanlan.zhihu.com/p/27229694
python打包工具 cx_Freeze介绍的更多相关文章
- Python 打包工具cx_freeze 问题记录及解决办法
在节前的最后一天,解决了打包过程中遇到的所有问题,可以成功运行了!真是个好彩头,希望新的一年一切顺利! 以下是在使用cx_freeze过程中遇到的问题及解决办法(Win7) 问题描述:运行exe,启动 ...
- $python打包工具pyinstaller的用法
pyinstaller是一个很好用的python打包工具,在Windows环境下可以将python脚本打包成一个exe可执行文件,并且脚本中所依赖的各种第三方库在打包时候都会被统一处理到一起,这样打包 ...
- Python打包工具setuptools的使用
将我们写的Python程序发布成包后,可以使其能够安装使用. 在项目上测试的时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试. setuptools是常用的打包工具. 一个简单 ...
- python程序打包工具 ── cx_Freeze
cx_Freeze是一个类似py2exe的工具,它们区别是py2exe是将python程序打包成windows下可以执行的exe文件的,而cx_Freeze则是将python程序打包为linux下可以 ...
- python打包工具distutils、setuptools分析
在上一篇博文中总结了python中导入包,安装包一条完整的线路.其中有一个有意思的知识点,安装包的方式有很多种,模块和包管理中打包,发布,安装也是值得研究的内容. python中安装包的方式有很多种: ...
- python 网络工具 scapy 介绍
作者介绍,这是个万能的网络工具,除了可以查看 TCP/IP 各层的报文,还可以发送报文.可以说是一个万能工具,作者嚣张的说, “it can replace hping, 85% of nmap, a ...
- Python虚拟环境工具-Virtualenv 介绍及部署记录
在开发Python应用程序时,系统默认的Python版本可能会不兼容这个应用程序, 如果同时开发多个应用程序, 可能会用到好几个版本的python环境, 这种情况下,每个应用可能需要各自拥有一套&qu ...
- python打包工具pyinstaller的使用
安装PyInstaller pip install pyinstaller 安装完后,检查安装成功与否: pyinstaller --version 安装成功后,就可以使用下面的命令了: pyinst ...
- Python打包工具
打包Python应用,使用工具: 1.Linux和Windows下,使用pyinstaller pyinstaller -F -w XXX.py 在当前文件夹下生成两个文件夹:build .dist ...
随机推荐
- CC1310 笔记
GPIO控制: #include <ti/drivers/GPIO.h> GPIO_init() 函数会调用 结构体实例 GPIOCC26XX_config,把需要使用到的GPIO放一起, ...
- vs2005设置打开文件和保存文件编码
一般vs2005打开文件时会自动侦测文件编码,自动以相应的编码格式打开.但是如果不认识的编码,就会出现乱码. Set VS2005 to use without BOM UTF-8 encoding ...
- kubernetes 部署
kubernetes 部署(Centos 7) 一个或者多个兼容 deb 或者 rpm 软件包的操作系统,比如 Ubuntu 或者 CentOS 每台机器 2 GB 以上的内存,内存不足时应用会受限制 ...
- 从Docker 到Jenkins 到Ansible的部署经验
从Docker 到Jenkins 到Ansible的部署经验 工作中,除了开发功能,还负责系统的部署工作.我从频繁的部署工作中,逐渐找到了一些偷懒的方法.从传统的Java -jar命令启动服务,到通过 ...
- sklearn_收入模型
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
- SSH 连接慢
关闭连接时的 DNS 解析 # 编辑配置文件,修改如下配置项 vim /etc/ssh/sshd_config GSSAPIAuthentication no UseDNS no # 重启服务 sys ...
- Mongodb分片集群技术+用户验证
随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的.而mongodb主打的就是海量数据架构,“分片”就用这个来解决这个问题. 从图中可以看到有四个组件:mongos.config server. ...
- 光刻技术的原理和EUV光刻技术前景
本文转载自微信公众号 半导体技术天地, 链接 https://mp.weixin.qq.com/s/EEBkSQ_Yc8RYFO18VpO8ow
- [C++]类成员返回语句 return *this 的理解
经常会在类似 copy-assignment 的成员函数看到返回语句 return *this ,这类函数通常返回类型是所属类的引用. 类成员函数的隐式指针 class *this const 经过 ...
- redis---------AOF文件异常导致的redis无法载入
AOF损坏时的对策1.若在写AOF文件时Server崩溃则可能导致AOF文件损坏而不能被Redis载入.可通过如下步骤修复: 创建一个AOF文件的备份: cp appendonly.aof appen ...