python compile_command是否考虑了环境?

时间:2014-07-27 20:57:58

标签: python

该文档说,如果用户输入"完整且有效" compile_command模块中的code函数将返回有效的代码对象。我想知道这个决定是否依赖于python的运行环境,例如变量和运行compile_command的工作空间中的导入模块。

我之所以这样问是因为我想将本地机器中python的用户输入发送到远程机器中的python执行。我想在实际发送用户输入执行之前决定用户输入是否完整。我的问题是,在我的本地机器中调用compile_command是否足够,或者我是否必须将用户输入发送到远程机器以确定它是否完整。

1 个答案:

答案 0 :(得分:1)

编译独立于执行环境。这就是为什么compile_command不接受像eval() function这样的全局 locals 参数的原因。

因此,编译Python代码可确保它在语法上是正确的,并且遵循语言规则。但是,这并不能保证代码在给定特定执行环境时实际运行。