为什么在导入pygame时,它会打印版本和欢迎消息。如何删除?

2024-04-25 01:07:44 发布

您现在位置:Python中文网/ 问答频道 /正文

为什么在导入pygame时会有一条消息,它会打印版本和欢迎消息。信息显示

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

如何禁用此邮件?


Tags: thefromhttpsorgcommunity版本信息消息
3条回答

我没有看到一个自然的方法来做这件事(你的是唯一的谷歌结果,我可以找到),但我实现了同样的事情,暂时禁用stdout,同时导入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

以下是《疯狂物理学家》提出的另一种选择:

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

它对我有效:

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

源代码包含保护此消息打印的条件:

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')

this commit

这是最近(2018年10月)添加的,到目前为止1.9.4在此之前发布。下一个版本>;1.9.4发布后,您只需使用PYGAME_HIDE_SUPPORT_PROMPT= ./my_code.py运行代码即可隐藏消息。

相关问题 更多 >