详解Python3.6的py文件打包生成exe

yipeiwu_com6年前Python基础

原文提到的要点:

1. Python版本32位 (文件名为 python-3.6.1.exe)

2. 安装所有用到的模块(原文博主用的是openpyxl,我用到的有urllib中的request\config\data)

3. 下载替换pyinstaller(下载pyinstaller-develop.zip,复制其中的Pyinstaller文件夹)

4. 在控制台生成exe

操作过程记录如下:

C:\Python\Scripts>pip install request
C:\Python\Scripts>pip install config
C:\Python\Scripts>pip install data
C:\Python\Scripts>pyinstaller.exe -F structs2.py

生成成功界面内容:

24957 INFO: checking EXE
24957 INFO: Building EXE because out00-EXE.toc is non existent
24957 INFO: Building EXE from out00-EXE.toc
24958 INFO: Appending archive to EXE C:\Python\Scripts\dist\structs2.exe
24975 INFO: Building EXE from out00-EXE.toc completed successfully.

之前失败了很多次,Python 3 转 exe 失败原因总结:

1. Python开发环境版本、环境变量不一致。之前错误的安装了(python-3.6.2rc1.exe)

2. 注意版本,之前尝试了多个版本,最后全部卸掉重新安装才成功

3. Python包要安装全,之前我没有装request \config等包,也可能是失败原因之一

曾有失败,内容如下:

usage: setup.exe [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.exe --help [cmd1 cmd2 ...]
or: setup.exe --help-commands
or: setup.exe cmd --help

解决方法是重新清理安装开发环境。终于成功。

相关文章

python引用(import)某个模块提示没找到对应模块的解决方法

python引用(import)某个模块提示没找到对应模块的解决方法

自己检查了很多遍,自己写的每错,但是还是报没有找到对应python模块。目录结构如下图所示: __init__.py这个文件需要引入models下的todo_kanban.py文件。_...

PyQt5下拉式复选框QComboCheckBox的实例

PyQt5下拉式复选框QComboCheckBox的实例

笔者在用PyQt5写GUI时碰到了需要使用下拉式复选框的情况,但是PyQt5中没有相应的组件,而网上找到的方法大多是qt使用的,所以不能直接拿来用。 没办法,在这种让人无奈的情况下,笔者...

Python中使用haystack实现django全文检索搜索引擎功能

前言 django是python语言的一个web框架,功能强大。配合一些插件可为web网站很方便地添加搜索功能。 搜索引擎使用whoosh,是一个纯python实现的全文搜索引擎,小巧简...

python 如何去除字符串头尾的多余符号

在读文件时常常得到一些\n和引号之类的符号,可以使用字符串的成员函数strip()来去除。 1.去除首尾不需要的字符 a= '"This is test string"' #...

Python中列表元素转为数字的方法分析

本文实例讲述了Python中列表元素转为数字的方法。分享给大家供大家参考,具体如下: 有一个数字字符的列表: numbers = ['1', '5', '10', '8'] 想...