web-dev-qa-db-fra.com

Comment puis-je convertir Pygame en EXE?

Récemment, j'ai fait un jeu de pygame. Je veux le montrer à mes amis. Mais malheureusement, je ne peux pas faire de fichier exécutable, seulement un .py fichier. J'ai essayé d'utiliser des outils tels que py2exe qui pourrait ne pas supporter Python 3.6 et pyinstaller. Je pense que pyinstaller peut être utile, et je peux aussi faire un exe Travaillez du tout. Cela vient d'être montré qu'il ne pouvait pas ouvrir le fichier son qui est déjà dans le même fichier.

J'ai essayé de deux façons de charger des fichiers d'abord, chargez simplement le chemin d'accès, puis l'exe converti indique qu'il ne peut pas ouvrir le fichier déjà dans le même chemin avec l'EXE.

Deuxièmement, j'utilise le os.path que l'exe a montré qu'il ne peut pas ouvrir ...../temp/... qui est un chemin long, mais mon ordinateur n'a pas du tout ce dossier.

Je suis un nouveau gars pour apprendre Python. J'ai cherché une journée et je ne peux pas le faire fonctionner. Pouvez-vous m'aider?

6
Bili Nico

1. Ajouter --hidden-import pygame. Quelque chose comme:
[.____] python -m PyInstaller <options> xxx.py --hidden-import pygame
[.____] 2. Pirater le pygame stdout. Si vous avez utilisé l'option -w, cela échouera à cause de la sortie (gênante) de sortie de Pygame.
Solution de contournement:

import contextlib
with contextlib.redirect_stdout(None):
    import pygame
0
wyz23x2