擅长:python、mysql、java
<p>这是因为<em>负数</em><code>timedelta</code>的表示方式。在</p>
<pre><code>import datetime
td = datetime.timedelta(days=1, hours=1)
print (td.days, td.seconds)
# prints 1 3600
minus_td = -td
print (minus_td.days, minus_td.seconds)
# prints -2 82800
</code></pre>
<p>我希望你现在能更好地理解为什么<code>days</code>受到影响。在</p>
<p><code>timedelta</code>中的秒数始终规范化为0到86399之间的正值:</p>
^{pr2}$