<p>我会偏离使用<code>global</code>,尤其是使用<code>string</code>,因为它是模糊的。你知道吗</p>
<p>把<code>jd2gd</code>返回<code>string</code>(或者你决定给它起的任何新名字)放在程序的底部,并把代码包含在<code>j2ghandler</code>。例如:</p>
<pre><code>def j2ghandler():
jul = float(jul_box.get())
gregDate = jd2gd(jul)
label = Label(time_calc, text=gregDate)
label.pack(side=TOP)
</code></pre>
<p>然后删除最后4行。你知道吗</p>
<p>我还没有对此进行测试,因此如果出现错误,一种解决方案是将按钮更改为:</p>
<pre><code>j2g_button = Button(time_calc, text='Convert Julian\n to Gregorian', command=lambda: j2ghandler(time_calc), width= 25, pady=5)
j2g_button.pack(side=TOP)
</code></pre>
<p>和<code>j2ghandler</code>到:</p>
<pre><code>def j2ghandler(master):
jul = float(jul_box.get())
gregDate = jd2gd(jul)
label = Label(master, text=gregDate)
label.pack(side=TOP)
</code></pre>
<hr/>
<p>顺便说一下。。。
您可能需要更改:</p>
<pre><code>j2g_button = Button(time_calc, text='Convert Julian\n to Gregorian', command = j2ghandler, width= 25, pady=5).pack(side=TOP)
</code></pre>
<p>收件人:</p>
<pre><code>j2g_button = Button(time_calc, text='Convert Julian\n to Gregorian', command = j2ghandler, width= 25, pady=5)
j2g_button.pack(side=TOP)
</code></pre>
<p>它按原样工作,但如果您再次尝试使用<code>j2g_button</code>,它将返回一个<code>none</code>对象。你知道吗</p>
<p>祝你好运!你知道吗</p>