当前位置: 首页 > 科技观察

不再使用Print调试,IceCream来了!

时间:2023-03-14 08:10:32 科技观察

如前所述,在编程过程中,bug几乎是不可避免的。事实上,大多数程序员花费大量时间调试(debugging),以使他们的代码没有错误。在调试时,最常用的方法无疑是使用print()语句来了解流水线流程,寻找bug。但是,使用print()有很多注意事项,例如:print语句通常旨在向用户显示输出。如果程序员使用print()进行调试,那么在调试之后,程序员应该注意只删除那些用于调试的特定print()语句。通常,在调试期间,您可能会一个接一个地打印多个变量。在这种情况下,程序员必须手动格式化输出以增强其可读性。var_1=1var_2=2print(var_1)print(var_2)12上面,我们打印了两个变量。虽然这里我们知道第一个变量是var_1,第二个变量是var_2,但是随着变量数量的增加,可能需要你在代码和输出之间来回走动,找出哪个输出对应哪个变量。当然,我们可以打印更多细节,如下所示,但这只会增加您的工作量,如果我们一直这样做,我们就不需要996。var_1=1var_2=2print("var_1=",var_1)print("var_2=",var_2)var_1=1var_2=2有时,程序员可能还需要打印行号、函数名及其输入等,这增加了编写长而多的print()语句的复杂性。在大多数情况下,代码库不仅限于一个文件。相反,有多个文件组成管道。在这种情况下,人们可能有兴趣在调试时也显示文件名,而print()会很麻烦。上述原因使print()(至少对我而言)成为最糟糕的调试选项。值得庆幸的是,Python中有一个很好的替代方案——IceCream[1]