Python程序打包exe报错的几种解决方法
在py文件所处的路径下输入cmd,进入文件夹的终端进行打包
# 带有终端窗口 pyinstaller -F xxx.py # 不带终端窗口 pyinstaller -F -w xxx.py
解决方法(一):检查你的Pyinstaller版本和Python版本或者第三方库版本是否匹配,如果不匹配,尝试卸载重新安装合适的版本
1.查看pyinstallar版本
pyinstaller --version
提示The ‘pathlib’ package is an obsolete backport of a standard library package and is incompatible with PyInstaller.conda remove pathlib卸载pathlib,提示The following packages will be UPDATED,输入y。
继续查看pyinstaller --version,Please install pywin32-ctypes.用pip install pywin32-ctypes提示已安装,用conda install pywin32-ctypes成功安装。
pyinstaller --version 5.13.0
2 查看Python版本
python --version Python 3.10.12
尝试
1.编辑 python 目录/Libs/dis.py,找到 def _unpack_opargs,将 else 部分增加一行
extended_arg = 0
发现文件里已存在这行2.查看5.13.0 pyinstaller官方文档,发现支持3.10.12版本的python,也能在win10上运行
https://pypi.org/project/pyinstaller/
解决方法(二):修改你的Python安装路径或者打包文件路径,确保没有中文或者空格
C:\Users\zzfs\Desktop\test依然无法运行
解决方法(三)重装Anaconda
没用
解决方法(四)在Anaconda Prompt里打包
没用
解决方法(五) 加日志记录问题
日志提示
File “pandas\core\generic.py”, line 5989, in getattr
AttributeError: ‘DataFrame’ object has no attribute ‘append’
pandas版本升级弃用了 老版本’DataFrame’的append方法。
#position_detail=position_detail.append(pd.Series(c3, index=position_detail.columns), ignore_index=True) 改成 position_detail=pd.concat([position_detail, pd.DataFrame([pd.Series(c3, index=position_detail.columns)])], ignore_index=True)
解决了。
可能是安装anaconda时同时安装了3.10版本的Python,但我之前单独安装过3.11版本的,spyder编译器里面内置的pandas包的版本 跟 打包时的pandas包不一样。
到此这篇关于Python程序打包exe报错的几种解决方法的文章就介绍到这了,更多相关Python程序打包exe报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
一篇文章告诉你如何用Python控制Excel实现自动化办公
这篇文章主要介绍了教你怎么用Python处理excel实现自动化办公,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下2021-08-08python的ImageTk.PhotoImage大坑及解决
这篇文章主要介绍了python的ImageTk.PhotoImage大坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-11-11
最新评论