2024-04-19 08:14:39 发布
网友
我想建立一个可视化调试器,帮助编程学生了解表达式求值是如何进行的(如何计算子表达式并用其值“替换”,类似于Excel中的表达式求值可视化工具)。在
看起来您不能使用Python的pdb逐步完成这个过程,因为它的最佳步骤粒度是代码行。有没有可能单步执行Python字节码?还有什么其他办法可以达到这个目标吗?在
编辑:我需要一个轻量级的解决方案,可以建立在Cpython标准库之上。在
使用pdb,可以单步执行任何函数调用。对于任何其他语句,pdb可以在行中打印相关名称的值。您还需要哪些未涵盖的附加功能?在
如果您试图“单步执行”诸如列表理解之类的事情,那么从纯Python的角度来看这是行不通的,因为它只是一个操作码。在某个时候,对于每个表达式,你都需要告诉你的学生“这就是Python进入C实现并对其求值的地方…”。在
你应该去看看reinteract,这很简单,你可以为它做贡献
你试过布丁吗? http://pypi.python.org/pypi/pudb 像debian这样: apt-get安装python-pudb
它连接到pdb,所以我想这不是你要找的。至少,当你进入一个函数时,它会清楚地显示出你在哪个函数中。在
对于教学生,你可以:
我知道,这还远远不够完美,但这是目前我能想到的最好的。在
使用pdb,可以单步执行任何函数调用。对于任何其他语句,pdb可以在行中打印相关名称的值。您还需要哪些未涵盖的附加功能?在
如果您试图“单步执行”诸如列表理解之类的事情,那么从纯Python的角度来看这是行不通的,因为它只是一个操作码。在某个时候,对于每个表达式,你都需要告诉你的学生“这就是Python进入C实现并对其求值的地方…”。在
你应该去看看reinteract,这很简单,你可以为它做贡献
你试过布丁吗? http://pypi.python.org/pypi/pudb 像debian这样: apt-get安装python-pudb
它连接到pdb,所以我想这不是你要找的。至少,当你进入一个函数时,它会清楚地显示出你在哪个函数中。在
对于教学生,你可以:
我知道,这还远远不够完美,但这是目前我能想到的最好的。在
相关问题 更多 >
编程相关推荐