一个用于学习者的python调试器,它打印出所有更改。
pdbg-bcit的Python项目详细描述
pdbg.py
目录
简介
pdbg是python的调试工具。它被设计成一个简单而轻量级的工具,用于解决python代码中的错误。
运行时,此工具将运行指定的脚本,同时在运行期间输出所有变量定义。当您希望在代码执行期间监视对变量所做的更改,并且您没有带调试器的IDE时,这非常有用。这也很有用,即使您有一个调试器,do时,因为许多调试器不允许您返回到代码中以前的步骤,从而很容易忘记以前的值是什么。此工具将在命令行输出或文件中同时显示所有更改,这意味着忘记发生的事情永远不会成为问题。
此模块的所有功能都是通过单个功能提供的。此函数的选项在本文档的Options部分中有详细说明
安装
您可以使用pip
pdbg
pip install pdbg-bcit
用法
使用这个工具很简单。在windows中,打开通常运行python脚本的文件夹中的cmd。然后,输入下面的命令,$filepath
作为要调试的python脚本的绝对路径。
python -c "import pdbg; pdbg.pdbg(r'$filepath')"
此方法将运行脚本并输出目标文件中的所有变量定义和更改。有关此方法的更多选项,请参见options。
示例
假设我们有一个包含以下代码的文件。
deffoo():bar=0foriinrange(3):bar+=1print(bar)foo()
如果我们想查看在foo()
中更改的变量,我们只需打开命令行并运行此命令,并将$filepath
作为python文件的路径。
python -c "import pdbg; pdbg.pdbg(r'$filepath', ['foo'])"
这就是我们的输出:
[Function] Entering function foo [Debug] bar = 0 bar { None => 0 } [Debug] for i in range(3): i { None => 0 } [Debug] bar += 1 bar { 0 => 1 } [Debug] for i in range(3): i { 0 => 1 } [Debug] bar += 1 bar { 1 => 2 } [Debug] for i in range(3): i { 1 => 2 } [Debug] bar += 1 bar { 2 => 3 } 3
选项
pdbg
.^{1}1}$pdbg{1}{1}$func滤波器{em1}$func滤波器=[],var滤波器=[],out}$outpufile=none,seperator“,”,outpupu-file=none,^{{em1}$eem>,em1}$outpu-file=none,^{{{{em1}$seper1}$eem>,“,^{{em1}{em值}}“)
- [必需]
file
- python脚本的路径。
func_filter
- 按函数名筛选输出。
var_filter
- 按变量名筛选输出。
output_file
- 默认为无。将pdbg的输出重定向到指定的文件。将通过在控制台中打印输出,否则
separator
- 在一行中更改多个变量时使用的分隔符。
output_format
- 格式化输出的字符串
{var_name}
将是变量的名称,{pre-value}
将是初始变量{new_value}
将是更改后的变量。
- 阅读the Python doc了解有关格式化的更多信息。