Skip to main content
 首页 » 编程设计

python之如何抑制 Python 脚本中的所有打印信息

2025年05月04日8jpfss

有没有一种简单的方法可以全局抑制来自 python 脚本的所有打印信息?

有一个场景,我在脚本中放置了很多打印信息用于调试目的,但是当用户运行时我不希望脚本打印所有信息。

因此只有当我传递命令行参数(如 debug=1 或类似参数)时,打印才需要提供信息,否则它不应打印。

简单地尝试过,

if sys.argv[1]: 
  debug=1 
else: 
  debug=0 
 
if debug: 
  print "Enabled debugging"  

但是为此我需要在任何地方都包含 if 条件,有什么简单的方法可以全局关闭打印信息吗?分享您的评论。

谢谢

请您参考如下方法:

您必须将标准输出重定向到/dev/null。 以下是与操作系统无关的方法。

import os 
import sys 
f = open(os.devnull, 'w') 
sys.stdout = f