gpt4 book ai didi

python - 在没有 ctypes 的情况下修改 bdb 中的变量值

转载 作者:行者123 更新时间:2023-12-04 08:18:46 26 4
gpt4 key购买 nike

我有一个类(class)扩展 bdb.Bbd我用于分析 Python 3 代码。现在,我还需要在逐步执行程序时修改一些变量值。
在函数之外,我可以通过修改 frame.f_locals 来做到这一点。字典:

frame.f_locals['x'] = 2
如果不使用 ctypes,我无法弄清楚如何在函数内部执行此操作 this中提到的技巧题。我在内部运行 Python 3 Pyodide不幸的是它不支持 ctypes然而。

最佳答案

应该可以按如下方式执行此操作。定义一个 Javascript 函数:

function frameLocalsToFast(frame){
pyodide._module._PyFrame_LocalsToFast(frame.$$.ptr, 0);
// Hopefully avoid memory leak
frame.destroy();
}
然后导入 frameLocalsToFast进入 Python 并在您想要更新框架时调用它。

关于python - 在没有 ctypes 的情况下修改 bdb 中的变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65586851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com