python - python 中的条件打印,无需为它们中的每一个编写一个 IF
问题描述
我在代码中写了很多 print(...) 行来验证中间结果。
当您需要它们时,它们很方便,但是当一切正常时,我需要提交/删除它们中的每一个。有时我发现我可能再次需要它们......然后我必须再次通过每个 print(...) 行。
那么是否有一个开关可以激活和停用那些 tmp-print 行?在不影响我一直想要激活的其他打印行的同时。
Ps:没有人愿意在每一行中使用 if :
if I_want_tmp_print:
print("one of my 100 tmp print lines")
解决方案
有时,如果我打印足够多并且我想要调试“可切换”,我会编写自己的函数,例如:
def prnt(string):
print(string)
return
因此,无论我在哪里检查我的代码,我都会使用我的函数 prnt 来代替。它会为我显示所有的输出。当我不再需要输出时,我将 print(string) 行注释掉,因此不会输出任何内容。
如果您只想停止注释代码的某些部分,我将阻止我的代码调用类似的函数,但参考号指示我在代码中使用它的位置。
def prnt(string, idx):
if idx = 1:
print(string)
elif idx = 2:
print(string)
elif idx = 3:
print(string)
...
return
所以然后说我发现我在 idx=1 范围内进行测试并且我正在调用 prnt('string to print', 1) 正在按我的意愿工作,我可以在我的函数中注释掉该打印行.
推荐阅读
- javascript - 过滤具有类别标题和内容的字段(php Laravel jquery)
- amazon-web-services - 如何使用 python 获取 AWS 实例的总内存大小?
- react-native - 渲染前反应原生测量文本高度
- python - 比较 QDateTime
- linux - 需要对 linux strace out 文件中某个项目的解释
- angularjs - 表示树结构的角递归指令需要添加文件列表
- encryption - 解码(加密/编码)伊拉克护照的 PDF417 条形码信息
- google-cloud-platform - 如何使用 BigQuery Streaming 获取插入的行数
- javascript - 在两个过滤器的“输入键”上添加事件
- flask - 将参数从烧瓶模板传递到视图