回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我想要一个函数作为可选参数
在python中使用另一个函数,但我不清楚如何做到这一点。你知道吗</p>
<p>例如,我定义了以下函数:</p>
<pre><code>import os, time, datetime
def f(t=datetime.datetime.now()):
return t.timetuple()
</code></pre>
<p>我已经把<code>t=datetime.datetime.now()</code>
为了使参数是可选的,所以
能够在没有参数的情况下调用<code>f()</code>。你知道吗</p>
<p>现在每当我执行<code>f()</code>时,我得到相同的datetime A(根据我的预期,这是错误的),但是每当我执行<code>f(datetime.datetime.now())</code>时,我得到不同的datetime(正如预期的那样正确)。你知道吗</p>
<p>例如</p>
<pre><code>>>> f()
time.struct_time(tm_year=2015, tm_mon=6, tm_mday=20, tm_hour=15, tm_min=36, tm_sec=2, tm_wday=5, tm_yday=171, tm_isdst=-1)
>>> f()
time.struct_time(tm_year=2015, tm_mon=6, tm_mday=20, tm_hour=15, tm_min=36, tm_sec=2, tm_wday=5, tm_yday=171, tm_isdst=-1)
>>> f(datetime.datetime.now())
time.struct_time(tm_year=2015, tm_mon=6, tm_mday=20, tm_hour=15, tm_min=37, tm_sec=1, tm_wday=5, tm_yday=171, tm_isdst=-1)
>>> f()
time.struct_time(tm_year=2015, tm_mon=6, tm_mday=20, tm_hour=15, tm_min=36, tm_sec=2, tm_wday=5, tm_yday=171, tm_isdst=-1)
</code></pre>
<p>为什么第四个电话让我回到36分2秒
在那之前打电话的时候?
为什么前两个电话给出相同的准确时间,即使我让他们之间有足够的时间?你知道吗</p>