Python - pygame error when executing exe file
So, I'm working on a little project for myself, using pygame and tkinter to build an mp3 player.
Everything works when running the program using visual studio, but when I turned the program to an .exe file using pyinstaller and tried to run in, the following appeared:pygame.mixer.load(song)
pygame.error
Failed to execute script
I've tried everything, but it keeps telling me the same. Here you can see how I call the song:
pygame.init()
pygame.mixer.init()
song = path + '\music\\' + selected_song
pygame.mixer.music.load(song)
Being path + '\music\\'
, the directory where the songs are. And slected_song
the name of the song + '.mp3'
.
You need double backslashes:
From:
song = path + '\music\\' + selected_song
To:
song = path + '\\music\\' + selected_song
Or:
song = f"{path}\\{music}\\{selected_song}"
As I mentioned it comment update pygame to version 2.0.0.dev6 or newer, and another possible issue is when making .exe
pyinstaller puts it in the dist
folder. So if you haven't moved it from that folder, paths are incorrect and the files couldn't be located, hence the error.