在将应用程序部署到生产环境后,调试不应成为事后的想法。它应该在开发过程中尽可能频繁地执行,因为这样可以轻松跟踪代码错误并为开发人员修复导致其代码无法运行的问题。大多数开发人员不知道 Python 的 print 函数并没有提供开发中发生的错误的确切图片。那么,您可以使用什么来识别和修复这些错误呢?答案是调试工具!它们提高了生产力并帮助使编码过程有效。
Python 调试器 (pdb) 是 Python 程序的交互式源代码调试器。除了调试之外,它还提供了附加功能,例如设置条件断点、逐行遍历源代码以及检查特定行的变量及其调用堆栈。
本文将解释调试器工具pdb
如何在测试期间和交付给用户之前检查和分析您的代码以使其符合行业标准。
要了解调试过程,您需要具备:
要正确调试 Python 代码,您需要了解以下提示,以帮助提高生产力和错误检查:
name = 'teri print(name)
安慰
在本节中,您将使用 Python 调试器pdb
测试 Python 代码。在交互式环境中实时运行代码并解决错误。
内置的pdb
模块是 Python 在安装工作工具时附带的标准库的一部分。该工具为您提供了在测试程序时可以使用的其他几个命令。让我们使用 pdb 编写一个函数。在代码编辑器中创建一个新文件app.py
或您想要的任何其他名称,以.py
扩展名结尾。
import pdb def multiply_number(num1, num2): pdb.set_trace() return num1 * num2 print(multiply_number(5, 10))
上面的代码执行以下操作:
pdb
multiply_number
有两个参数num1
和num2
set_trace
方法调用库,这对pdb
对象很有帮助,因为它会暂停您的程序并进入允许您在控制台中键入和测试代码的调试器模式
使用命令python3 <name-of-file.py>
运行这个程序会进入调试器,我们可以在其中传递几个调试器命令来运行代码。检查
接下来,让我们在控制台中尝试一些命令:
键入 a 或 args 会列出当前函数 multiply_number 中使用的所有参数。
在尝试另一个命令之前,更新 app.py 文件中的代码以将字符串作为参数的一部分包含在内,以便程序在执行期间输出错误:
# app.py import pdb def multiply_number(num1, num2): pdb.set_trace() return num1 * num2 print(multiply_number(5, 'execute'))
使用命令 python3 app.py 重新运行程序:
在控制台中输入num1
和num2
,它会输出在 multiply_number 函数中传递的参数的结果。
您可以尝试的其他命令包括文档中的下一步、继续等。
最后,一旦pdb
识别出代码中的错误及其发生的行号,您就可以返回代码并通过更正错误并使用正确的参数来清理它,以便程序运行。
注意: pdb
模块用于开发期间的测试,而不是生产。在部署之前将其删除。
本文将指导您在尝试修复代码和识别错误时采用最佳实践。使用该方法比打印功能更好,因为它有更多功能可以帮助您提高代码质量。