<p>无法将<code>.000Z</code>识别为时区偏移量。实际上,您有<em>毫秒</em>和时区(<code>Z</code>是UTC),并且<em>正式</em>,<code>time.strptime()</code>解析器无法处理毫秒。在<em>上,一些</em>平台<code>%f</code>将解析微秒部分,然后丢弃信息。</p>
<p>然而,<a href="http://docs.python.org/2/library/datetime.html#datetime.datetime.strptime" rel="noreferrer">^{<cd5>} class method</a>,<em>可以</em>,但是<em>不能</em>时区;将<code>Z</code>解析为一个文本,它可以工作:</p>
<pre><code>from datetime import datetime
datetime.strptime(key.last_modified, '%Y-%m-%dT%H:%M:%S.%fZ')
</code></pre>
<p>演示:</p>
<pre><code>>>> from datetime import datetime
>>> import time
>>> example = u'2013-10-20T00:41:32.000Z'
>>> datetime.strptime(example, '%Y-%m-%dT%H:%M:%S.%fZ')
datetime.datetime(2013, 10, 20, 0, 41, 32)
>>> time.strptime(example, '%Y-%m-%dT%H:%M:%S.%fZ')
time.struct_time(tm_year=2013, tm_mon=10, tm_mday=20, tm_hour=0, tm_min=41, tm_sec=32, tm_wday=6, tm_yday=293, tm_isdst=-1)
</code></pre>
<p>注意,在我的Mac OS X笔记本电脑上,<code>%f</code>适用于<code>time.strptime()</code>;但是,它不能保证在任何地方都能工作。</p>
<p>将<code>datetime.datetime()</code>对象转换为时间元组可以使用<a href="http://docs.python.org/2/library/datetime.html#datetime.datetime.timetuple" rel="noreferrer">^{<cd10>} method</a>完成。</p>