PHP前端开发

PyInstaller打包Tkinter程序时,如何正确加载WAV资源?

百变鹏仔 3个月前 (01-14) #Python
文章标签 如何正确

pyinstaller 打包 tkinter 带 wav 资源

pyinstaller 是一款可将 python 程序打包成单个可执行文件的工具。在将 tkinter 程序打包时,可能会遇到 wav 资源加载失败的问题,即使使用了 --add-data 参数也无济于事。

解决方法

为了解决此问题,可以采取以下步骤:

  1. 将 --add-data 改为 --add-binary

在命令行中,将打包命令中的 --add-data 参数替换为 --add-binary。

  1. 添加代码以获取文件路径

在 python 代码中,添加以下代码,将 wav_path 替换为 wav 文件的路径:

try:    base_path = sys._MEIPASSexcept Exception:    base_path = os.path.abspath(".")wav_path = os.path.join(base_path, "a.wav")

这样,程序就可以在打包后找到并加载 wav 文件,从而解决资源加载失败的问题。