假设我有一个使用Python编写的代码,并且在该代码的中间,我有一个eval
依赖于某些外部输入的表达式,例如:
exp = raw_input()
eval(exp)
我的问题是:Python的编译器和解释器使用哪种机制来绑定可以与依赖于运行时值的代码一起编译的代码?
Python编译器不在乎其编译代码来自何处。它可以在运行时在执行之前编译来自文件的代码,在使用时python filename
可以在执行过程中编译文件import
,并且在调用eval()
或时可以从字符串表达式编译代码exec()
。这些函数动态调用编译器。