擅长:python、mysql、java
<p>此方法应始终返回与此完全相同的时间戳(根据输入<code>dt</code>对象是否包含时区而定):</p>
<p><strong>2016-08-05T18:18:54.776+0000</strong></p>
<p>它接受一个<code>datetime</code>对象作为输入(可以使用<code>datetime.datetime.now()</code>生成)。要获得我的示例输出中的时区,您需要<code>import pytz</code>并传递<code>datetime.datetime.now(pytz.utc)</code>。</p>
<pre><code>import pytz, datetime
time_format(datetime.datetime.now(pytz.utc))
def time_format(dt):
return "%s:%.3f%s" % (
dt.strftime('%Y-%m-%dT%H:%M'),
float("%.3f" % (dt.second + dt.microsecond / 1e6)),
dt.strftime('%z')
)
</code></pre>
<p>我注意到,如果有一个方法(例如<code>0.870</code>变成<code>0.87</code>),上面的其他一些方法会省略尾随的零,这会给我正在向其中输入这些时间戳的解析器带来问题。这个方法没有那个问题。</p>