中断Python函数并操纵变量

时间:2019-05-27 10:30:47

标签: python scope interrupt

我有文件main.py,其中包含代码

def my_function():

    a = 0
    b = 1
    c = 2

if __name__ == "__main__":
    my_function()

我从终端/外壳执行此脚本。

如果我使用python -i main.py运行脚本,则所有变量都已消失,因为函数my_function已超出范围。

如何在命令a = 0之后中断脚本的运行并将a设置为值1?

编辑 我的目标是学习即使在函数完成后,如何将某些命令应用于作为函数结果的变量。因此,我上面编写的代码只是一个(最低工作)示例。

1 个答案:

答案 0 :(得分:1)

您可以使用Python debuger's set_trace()从正在运行的程序中闯入调试器并操纵变量。 使用调试器命令c(ont(inue))继续执行。

def my_function():

    a = 0
    import pdb
    pdb.set_trace()
    b = 1
    c = 2

if __name__ == "__main__":
    my_function()