擅长:python、mysql、java
<p>首先,为什么要尝试<code>subprocess</code>另一个python脚本,而只需导入它?在</p>
<p>总之,您的问题源于这样一个事实,即<code>call</code>、<code>wait</code>和{<cd4>}中的任何一个都等待{<cd1>}的终止,如果<code>timeout</code>参数被赋值。由于这个原因,<code>tkinter</code>应用程序无法刷新自身,<code>mainloop</code>对于代码流是不可访问的。在</p>
<p>如果你脑子里有什么复杂的事情-看看<a href="https://docs.python.org/3/library/threading.html" rel="nofollow noreferrer">^{<cd9>}</a>、<a href="https://docs.python.org/3/library/multiprocessing.html" rel="nofollow noreferrer">^{<cd10>}</a>和{a3}主题。在</p>
<p>如果您只想在子进程完成时终止主进程,请查看以下代码片段:</p>
<p><strong>测试.py:</strong></p>
<pre><code>import time
time.sleep(5)
</code></pre>
<p><strong>主.py:</strong></p>
^{pr2}$
<p>这里的主要思想是保持<code>mainloop</code>对于使用<a href="https://docs.python.org/3/library/subprocess.html#subprocess.Popen.poll" rel="nofollow noreferrer">^{<cd12>}</a>和<a href="http://effbot.org/tkinterbook/widget.htm#Tkinter.Widget.after-method" rel="nofollow noreferrer">^{<cd13>}</a>方法组合的代码是可到达的。在</p>