解决问题

通过pip装库,运行打包后的exe失败

命令行输入where python显示Windowsapp的路径

正文

这里我从GitHub下载了一个开源工具,只有源码,开始打包成gui图形化工具

将 Python 脚本(.py)转换为 Windows 可执行文件(.exe),最主流且推荐的方法是使用 PyInstaller。它会把 Python 解释器、你的脚本代码以及所有依赖库打包在一起,让程序能在没有安装 Python 的电脑上运行。

执行pip install pyinstaller

执行打包命令
基本语法是 pyinstaller [选项] 你的脚本.py。以下是几个最常用的参数

参数 作用 适用场景
-F 或 --onefile 打包成单个 .exe 文件 方便分发,但启动稍慢
-D 或 --onedir 打包成一个文件夹(默认) 包含多个依赖文件时,启动更快
-w 或 --noconsole 隐藏黑色的命令行窗口 打包带图形界面(GUI)的程序
-c 或 --console 保留命令行窗口(默认) 打包命令行工具,方便看输出
-i 或 --icon 为 exe 设置自定义图标 需要 xxx.ico 格式的文件

执行了pyinstaller -F -w my_app.py然后报错

image-20260915224145707

意思是没有pyQt6,找不到库,直接执行pip install PyQt6

但是安装页面出错了,大概是说Failed to establish a new connection就是网不行,这个时候就要换源!用国内的下载网络

执行pip install PyQt6 -i https://mirrors.aliyun.com/pypi/simple/

安装成功(看似)

但是现在又显示image-20260915224615348

又少了库,那我们继续pip下载,但是发现还是会报错

这个时候考虑python本身的问题了

在cmd中输入where python,发现输出的是C:\Users\syuan\AppData\Local\Microsoft\WindowsApps\python.exe

查询之后发现这个相当于是windows商店的广告,劫持了我们的命令,这个就要配置环境变量了,把py真实位置放到windowsapp上面

尝试过后发现不行,尝试直接用命令行

1
2
$p = [Environment]::GetEnvironmentVariable("Path", "User")
[Environment]::SetEnvironmentVariable("Path", "C:\Users\syuan\AppData\Local\Programs\Python\Python312;C:\Users\syuan\AppData\Local\Programs\Python\Python312\Scripts;$p", "User")

现在where python发现正常了,装库后也能正常运行,生成了正常的exe

总结

打包命令**pyinstaller [选项] 你的脚本.py**

-f打包成一个文件

-w打包成图形化文件

装库命令**pip install xxx**

站内搜索

没有找到内容!