Python breakpoint() 函数用于调试过程,它调用 sys.breakpointhook() 方法,该方法触发有助于检查程序执行的 Python 调试器。
当 Python 解释器到达 breakpoint() 函数时,它会在该特定行停止执行,并允许用户检查变量、表达式,并且一次一行地单步执行代码。
breakpoint() 是 Python 3.7 版本中添加的内置函数之一。
语法
以下是 Python breakpoint() 函数的语法 -
参数
Python breakpoint() 函数不接受任何参数。
返回值
Python breakpoint() 函数不返回任何值。
breakpoint() 函数示例
练习以下示例来理解 Python 中 breakpoint() 函数的用法:
示例:使用 breakpoint() 函数
在下面的代码中,我们有一个 calc_sum() 方法,它接受两个参数并返回它们的 sum。在 breakpoint() 函数的帮助下,我们启用了调试器模式来检查 sum 操作的工作原理。
以下是上述代码的输出 -
<main.py>(6)<module>()
(Pdb) calc_sum
<function calc_sum at 0x7f9be0b14720>
(Pdb) res
100
(Pdb)
(Pdb) calc_sum
<function calc_sum at 0x7f9be0b14720>
(Pdb) res
100
(Pdb)
示例:用户定义函数中的 breakpoint()
以下示例显示了 Python breakpoint() 函数的用法。在这里,我们将创建一个名为 'calc_sum' 的方法,它接受一个列表对象并返回其元素的总和。为了检查它如何添加 list 的元素,我们使用 breakpoint() 函数。
当我们运行上述程序时,它会显示 PDB 调试器控制台,用户可以通过传递变量和方法名称进行交互,如下所示 -
> <main.py>(3)calc_sum()
(Pdb) calc_sum
<function calc_sum at 0x7e5617490720>
(Pdb) add
1
(Pdb) num
1
(Pdb) nums
[1, 2, 3]
(Pdb) n
> <main.py>(4)calc_sum()
(Pdb) num
2
(Pdb)
(Pdb) calc_sum
<function calc_sum at 0x7e5617490720>
(Pdb) add
1
(Pdb) num
1
(Pdb) nums
[1, 2, 3]
(Pdb) n
> <main.py>(4)calc_sum()
(Pdb) num
2
(Pdb)
示例:有例外的 breakpoint() 函数
下面的示例展示了如何在 Python 的 try-except 块中使用 breakpoint()。在此代码中,如果 divisor 的值为 0,则遇到错误。为了检查此错误,我们使用 breakpoint() 函数。
上述代码的输出如下 -
ERROR!
Error: Division by zero.
--Return--
> <main.py>(6)division()->None
(Pdb) x
88
(Pdb) y
0
Error: Division by zero.
--Return--
> <main.py>(6)division()->None
(Pdb) x
88
(Pdb) y
0