<p>假设您有包含以下内容的文件</p>
<hr/>
<p><strong><code>sim1.py</code></strong></p>
<pre class="lang-py prettyprint-override"><code>def simulation1():
print("This is simulation 1")
simulation1()
</code></pre>
<p><strong><code>main.py</code></strong></p>
<pre class="lang-py prettyprint-override"><code>import sim1
sim1.simulation1()
</code></pre>
<p><strong><code>output</code></strong></p>
<pre class="lang-sh prettyprint-override"><code>This is simulation 1
This is simulation 1
</code></pre>
<p>当您将<code>sim1</code>导入<code>main.py</code>并调用其函数<code>simulation1</code>时,<code>This is simulation 1</code>将被打印两次。
因为,<code>simulation1</code>在<code>sim1.py</code>内调用,也在<code>main.py</code>内调用</p>
<p>如果希望在<code>sim1.py</code>中运行该函数,但不希望在导入<code>sim1</code>时运行,则可以将其放置在<code>if __name__ == "__main__":</code>中</p>
<hr/>
<p><strong><code>sim1.py</code></strong></p>
<pre class="lang-py prettyprint-override"><code>def simulation1():
print("This is simulation 1")
if __name__ == "__main__":
simulation1()
</code></pre>
<p><strong><code>main.py</code></strong></p>
<pre class="lang-py prettyprint-override"><code>import sim1
sim1.simulation1()
</code></pre>
<p><strong><code>output</code></strong></p>
<pre class="lang-sh prettyprint-override"><code>This is simulation 1
</code></pre>