擅长:python、mysql、java
<blockquote>
<p>why do I have to pass seconds = uptime to timedelta</p>
</blockquote>
<p>因为timedelta对象可以传递秒、毫秒、天等。。。所以需要指定传入的内容(这就是为什么使用显式键)。向<code>int</code>进行类型转换是多余的,因为它们也可以接受浮点数。</p>
<blockquote>
<p>and why does the string casting works so nicely that I get HH:MM:SS ?</p>
</blockquote>
<p>格式化的不是类型转换,而是对象的内部<code>__str__</code>方法。事实上,如果你写下:</p>
<pre><code>print datetime.timedelta(seconds=int(uptime))
</code></pre>