栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python打包exe

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python打包exe

pip install pyinstaller

配合虚拟环境打包

1. 在mac上开发创建虚拟环境

2. 开发。。

3. 开发完毕后:pip freeze > requirements.txt

4. 打开虚拟机,创建虚拟环境

5. 安装依赖库:pip install -r requirements.txt

6. 安装pyinstaller:pip install pyinstaller

7. 打包文件:pyinstaller -F xxx.py

 打包成多个文件

pyinstaller -D xx.py

  • 打开生成的build文件是编译生成的中间文件可以不用理会
  • 优点运行速度相对快一些
  • 涉及程序中读写其他文件,不会报错!!
执行程序出错时终端一闪即退,想要看报错信息?

先打开终端cmd,命令 将可执行文件拖拽到终端,执行。

打包成单文件

pyinstaller -F xx.py

 其他参数:

  • -n:  打包文件/文件夹 重命名
  • -i :  图标,.ico
路径问题
import os
PROJECT_PATH = os.path.dirname(__file__)
print(PROJECT_PATH)

 打包成单文件时,遇到程序中读取其他文件时会报错?

单文件运行时程序会解压到一个临时文件夹,使用相对路径查找文件会发生报错

解决办法:sys.argv

  • 获取程序运行时的文件绝对路径
  •  os.path.realpath(sys.argv[0]) 可以获取程序运行时的路径
import sys
import os

BASE_DIR = os.path.dirname(os.path.realpath(sys.argv[0]))
with open(os.path.join(BASE_DIR, "config.txt"), mode='r', encoding='utf-8') as fp:
    data = fp.read().strip()
print(data)

注意:将config.txt文件与程序文件放在一起。。

 动态导包时

再将spec进行打包

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1025911.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号