问题描述:
使用pyinstaller -F ***.py
打包后,运行闪退,
提示找不到资源文件。
解决方法:
实验数据处理需要,之前用Python写了一个小程序,为了方便使用就用Tk写了个界面,打包时遇到了如题一样的困惑,不过参考pyinstaller的官方文档解决了,所以建议遇到类似问题的时候官方文档是第一参考,以免浪费时间。下面是将打包数据文件的绝对路径转为相对路径的一个脚本,利用的是os的path模块和 sys._MEIPASS:from os import pathimport sysbundle_dir = getattr(sys, '_MEIPASS', path.abspath(path.dirname(file)))path_to_dat = path.join(bundle_dir, 'other-file.dat')将这个脚本加入到主脚本文件中,用转换的路径代替原来脚本中数据文件的绝对路径即可。打包数据可以利用--add-data命令或者使用.spec文件,不多赘述Reference:
作者:李且
链接:https://www.zhihu.com/question/268105244/answer/771295481
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
尝试了成功解决:
pyinstaller ***.py --add-data ".\*.png;."
网友评论