擅长:python、mysql、java
<p><code>compile</code>是<code>exec</code>和<code>eval</code>的低级版本。它不执行或计算语句或表达式,而是返回一个可以执行它的代码对象。模式如下:</p>
<ol>
<li><code>compile(string, '', 'eval')</code>返回如果完成<code>eval(string)</code>本应执行的代码对象。注意,在此模式下<em>不能</em>使用语句;只有(单个)表达式有效。用于单个表达式。</li>
<li><code>compile(string, '', 'exec')</code>返回如果完成<code>exec(string)</code>本应执行的代码对象。这里可以使用任意数量的语句。用于整个模块。</li>
<li><code>compile(string, '', 'single')</code>与<code>exec</code>模式类似,但它将忽略除第一条语句之外的所有内容。请注意,<code>if</code>/<code>else</code>语句及其结果被视为单个语句。用于一个语句。</li>
</ol>
<p>看看<a href="http://docs.python.org/3.3/library/functions.html#compile" rel="noreferrer">documentation</a>。在<a href="http://joequery.me/code/python-builtin-functions/#compile" rel="noreferrer">http://joequery.me/code/python-builtin-functions/#compile</a>还有一个很棒的(好吧,简化了)解释,其中有一个很好的用法示例。</p>