75 votes

Pourquoi lors de l'importation pygame, il imprime la version et le message de bienvenue. Comment le supprimer?

Pourquoi y a-t-il un message lorsque j'importe pygame, il imprime la version et le message de bienvenue. Le message se lit

 "pygame 1.9.4 Hello from the pygame community.
 https://www.pygame.org/contribute.html" 
 

Comment puis-je désactiver ce message?

106voto

Ça marche pour moi:

 import os
os.environ['PYGAME_HIDE_SUPPORT_PROMPT'] = "hide"
import pygame
 

37voto

tsbertalan Points 59

Je n'ai pas vu de moyen naturel de le faire (le vôtre est le seul résultat Google que j'ai pu trouver), mais j'ai réussi la même chose en désactivant temporairement stdout lors de l'importation de pygame.

 import os, sys
with open(os.devnull, 'w') as f:
    # disable stdout
    oldstdout = sys.stdout
    sys.stdout = f

    import pygame

    # enable stdout
    sys.stdout = oldstdout
 

Voici l'alternative suggérée par @Mad Physicist:

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

16voto

Will Points 140

Le code source contient une condition qui garde l'impression de ce message:

if 'PYGAME_HIDE_SUPPORT_PROMPT' not in os.environ:
    print('pygame %s' % ver)
    print('Hello from the pygame community. https://www.pygame.org/contribute.html')

Voir à ce commit

Ceci a été ajouté à assez récemment (octobre 2018) et pour l'instant 1.9.4 a été publiée avant cette. Une fois que la prochaine version > 1.9.4 est publié, vous devez tout simplement en mesure d'exécuter votre code avec PYGAME_HIDE_SUPPORT_PROMPT= ./my_code.py masquer le message.

10voto

Kalif Points 61

Vous pouvez accéder au dossier de la bibliothèque pygame, quelque chose comme ceci pour la version 3.6 32 bits:

 Python36-32\Lib\site-packages\pygame
 

et éditez le fichier __init__.py et supprimez la dernière ligne pour vous débarrasser de ce message.

5voto

Hunaphu Points 136
  1. importer pygame
  2. Obtenez l'emplacement du fichier init: f = pygame.__file__
  3. Ouvrez f et commentez l'impression sur les deux dernières lignes du fichier

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X