cx_Freeze(不推荐)

以前只用 cx_Freeze 支持将 python3 打包成 exe ,示例如下:

在你要打包的 python 文件下新建这个 setup.py 文件:

#!/usr/bin/env python
# -*- coding: utf-8 -*- from cx_Freeze import setup, Executable base = None executables = [
Executable('你的代码.py', base=base)
] setup(
name="TTyb",
version="1.0",
description="打包示例",
executables=executables
)

然后在当前命令行执行:

python3 setup.py build

这时候会在当前目录下生成一个 build 文件,里面就有一个 exe

注意: cx_Freeze 打包回忽略依赖文件,所有一般依赖文件要手动从 site-packge 里面拷贝到build文件里面去,特别麻烦!

PyInstaller(推荐)

后面 PyInstaller 开始支持 python3 打包,这样子打包就方便很多了,直接在当前命令行下:

#命令语法:pyinstaller -F 文件名(带后缀py)
#常用参数说明:
#–icon=图标路径
#-F 打包成一个exe文件
#-w 使用窗口,无控制台
#-c 使用控制台,无窗口
#-D 创建一个目录,里面包含exe以及其他一些依赖性文件
#pyinstaller -h 来查看参数 #将cmd的目录切换至(命令:cd 文件路径(注意空格))需要打包的py文件目录下:
#有命令窗口弹出
pyinstaller -F shjys_rjjqk.py
#无命令窗口弹出
pyinstaller -F -w shjys_rjjqk.py
#或者
pyinstaller -F shjys_rjjqk.py --noconsole

打包好的exe文件,在同目录的 dist 文件中,如果有依赖文件,就可以放到dist文件夹下即可

当打包出现错误:

for real_module_name, six_moduleAttributeError: 'str' object has no attribute 'items'

说明 setuptools 版本不行,直接更新这个版本就好:

pip3 install -U setuptools

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3qlzjs99fq4gg

Python3 打包exe的更多相关文章

  1. Python3+PYQT5 实现并打包exe小工具(1)

    前言: 由于项目原因,配置测试环境与正式环境切换频率很高,固写了一键切换环境的工具.用于记录. 实现逻辑: 1.读取注册表中客户端的安装目录,把固定的环境配置文件添加到固定目录下实现配置测试环境: 2 ...

  2. PyQt5环境搭建及cx_freeze打包exe

    Python的图形库也有好几个,Qt文档和使用面还是要广一些. 打包成可执行文件的也有好几个,PyInstaller用的比较多,但是PyInstaller目前还不支持Python3.6(开发版支持3. ...

  3. py脚本打包exe可执行文件

    python3以上版本打包exe需要扩展软件:cx_freeze 下载地址:http://cx-freeze.sourceforge.net/ 1)安装后在\Python32\Scripts\cxfr ...

  4. python pyinstaller 打包exe报错

    今天用python 使用pyinstaller打包exe出现错误 环境pyqt5 + python3.6 在导入pyqt5包之前加上如下代码 import sysimport osif hasattr ...

  5. 利用PyInstaller打包exe文件

    前言 平常我们通过Python写完一些小脚本之后,如果使用不频繁的话,一般会选择在DOS界面直接跑脚本,或者在IDE中运行.但当我们需要频繁使用某些脚本,或者在没有Python环境的机器上也能顺利运行 ...

  6. [破解]java打包Exe工具 - Jar2Exe Wizard

    打包java文件为exe的方法和软件有很多,还有一些开源的软件和一些免费的软件. 我用过的所有打包exe软件中,Jar2Exe Wizard是最好用的,但是只有一个月的试用期,需要的可以从官网下载. ...

  7. Air打包exe

    1.用flash创建一个airtest.fla,发布目标选择为AIR.ctrl+enter会得到如下文件: 2.把flex sdk的bin中找到adl.exe,复制过来,放置到:项目目录\bin\ad ...

  8. win7下nsis打包exe安装程序教程

    下载软件包: NSIS中文版 :https://pan.baidu.com/s/1mitSQU0 装好之后会出现两个软件:Nullsoft Install System 和 VNISEdit 编译环境 ...

  9. pyinstaller 打包exe可执行文件

    Python打包EXE方法之一 一.安装Pyinstaller 1.安装pywin32 下载安装文件:查找到跟自己适用的python版本及window系统版本匹配的pywin32,下载后安装 使用pi ...

随机推荐

  1. 2019牛客暑期多校训练营(第八场)A:All-one Matrices(广告牌问题 单调队列)

    题意:给出N*M的01矩阵,求矩阵个数,满足矩阵内全是‘1’,,而且被至少一个’0‘围住.(假设边界外是‘0’.(N,M<3000) 思路:这类问题,一般解决就是两个方向: A:压缩一维,即枚举 ...

  2. Tomcat 禁用不安全的 HTTP 请求模式及测试

    WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议.它扩展了HTTP 1.1,在GET.POST. ...

  3. html css div固定底部

    <div id="father"> <footer></footer> </div> #father{ position:relat ...

  4. 超实用文件监控多线程FTP上传工具

    这是自己很久以前写的一个多线程FTP 上传工具,支持多账户,自定义线程数,自定义文件监控目录,可用做文件发布使用,非常实用,今天有小伙伴问起,现分享出来: using System; using Sy ...

  5. jmeter通过cookie获取图片验证码实现登录2

    在登录时有一张图片验证码,需要获取验证码用于后续登录,见图 1.找到图片验证码接口写入jmeter 2.正则表达式提取cookie 3.Fiddler抓取登录成功的响应cookie,并设置成全局 4. ...

  6. shell 文件的包含

    使用.或者source api.sh function intadd() { let data=$+$ echo $data } test.sh #!/bin/bash . api.sh read d ...

  7. yum本地安装rrdtool报错,提示版本冲突的解决办法

    [root@mysql-mon40 mm]# yum localinstall rrdtool-1.4.7-1.el6.rfx.x86_64.rpm -y 错误: Multilib version p ...

  8. R 语言输入输出 读取命令函参数

    输入数据 使用键盘输入数据 只能处理小样本,很少使用 在创建 data.txt 字符串之后,用函数 read.table() 创建数据框 data.1.这种方法可以让我们把数据嵌入到R代码中,此处切记 ...

  9. 【Beta】Phylab 测试报告

    PhyLab Beta 测试报告 测试中发现的bug Beta阶段新Bug Bug 可能原因 markdown生成的报告可能溢出显示框 表格过长,显示框未设置横向溢出 移动端实验区无法评论 移动端社区 ...

  10. Net core学习系列(八)——Net Core日志

    一.简介# 日志组件,作为程序员使用频率最高的组件,给程序员开发调试程序提供了必要的信息.ASP.NET Core中内置了一个通用日志接口ILogger,并实现了多种内置的日志提供器,例如 Conso ...