我打印出(m x n)值表用于调试,但是,我不希望在非调试模式下打印出调试消息。在C中,可以在代码中使用“#ifdef _DEBUG”来完成,并在预处理器定义中定义_DEBUG。我可以知道Python中的等价方式吗?
答案 0 :(得分:3)
Python有一个名为“logging”的模块 看到这个问题: Using print statements only to debug
答案 1 :(得分:0)
您可以在某个地方定义全局变量,如果这是您想要的。但是,更简洁,更标准的方法是读取配置文件(很简单,因为你可以用普通的Python编写配置文件)并在那里定义DEBUG。所以你有一个如下所示的配置文件:
# program.cfg
# Other comments
# And maybe other configuration settings
DEBUG = True # Or False
然后在您的代码中,您可以import
您的配置文件(如果它位于Python路径上的目录中并且具有Python扩展名),或者您可以execfile
它。
cfg = {}
execfile('program.cfg', cfg) # Execute the config file in the new "cfg" namespace.
print cfg.get('DEBUG') # Access configuration settings like this.
答案 2 :(得分:0)
试试这个:
import settings
if settings.DEBUG:
print testval
当且仅当settings.py
中的DEBUG = True时,才打印testval