Python 禁用print()后如何启用它?

Python 禁用print()后如何启用它?,python,printing,Python,Printing,我的问题和你的完全一样。我使用以下代码禁止打印: # Disable def blockPrint(): sys.stdout = open(os.devnull, 'w') # Restore def enablePrint(): sys.stdout = sys.__stdout__ 这个问题的最高解决方案是通过以下行存储旧的stdin,但我已经禁用了打印。我怎样才能恢复这个 sys.__stdout__ = sys.stdout 总结上述评论: 禁用它仅在程序运行期间持续。关闭并重

我的问题和你的完全一样。我使用以下代码禁止打印:

# Disable
def blockPrint():
sys.stdout = open(os.devnull, 'w')

# Restore
def enablePrint():
sys.stdout = sys.__stdout__
这个问题的最高解决方案是通过以下行存储旧的
stdin
,但我已经禁用了打印。我怎样才能恢复这个

sys.__stdout__ = sys.stdout

总结上述评论:

  • 禁用它仅在程序运行期间持续。关闭并重新启动它将修复它
  • 要在同一程序运行中禁用和恢复,请在禁用sys.stdin之前将其存储在临时变量中,如下所示:
temp\u stdout=None
#禁用
def区块打印():
全球温度
温度=sys.stdout
sys.stdout=open(os.devnull,'w')
#恢复
def enablePrint():
全球温度
sys.stdout=temp\u stdout

你不能在禁用它之前保存它吗?我的问题是,我只是在禁用它之后才看到这篇文章。“禁用”只在当前程序运行期间持续。如果关闭并重新启动程序,所有内容都将恢复。