【问题标题】:How to execute Python program and get the variables using exec()?如何执行 Python 程序并使用 exec() 获取变量?
【发布时间】:2015-05-02 22:29:33
【问题描述】:

我想使用exec() 执行一个正确的 Python 程序,然后在执行后获取变量及其值。谷歌说我应该创建一个字典并在那里写下执行结果:exec(code_object) in variables。但不幸的是,这在 Python 3 中没有。

【问题讨论】:

标签: python exec python-3.3


【解决方案1】:

Python 3 中的代码应该是:

exec(code_object, variables)

这个语法也是Python 2 compatible


exec(code_object) in variables

编译并在 Python 3 中运行,但做一些与 Python 2 完全不同的事情——它将在当前范围内执行 code_objectexec 将返回 None;那么表达式None in variables 将评估False,因为None 不是variables 中的键;结果将被删除 - 因此既不会发生编译时错误,也不会发生运行时错误,除了 code_object 看到错误的范围。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-04
    • 2012-08-30
    • 2011-11-18
    • 1970-01-01
    相关资源
    最近更新 更多