擅长:python、mysql、java
<p>您正在<code>for</code>循环中调用<code>self.write()</code>,而您仍在构建<code>datum</code>。将其移到外部,使其仅在收集完所有数据后运行:</p>
<pre><code>for i in phone:
[...]
if value == 0: # don't use "is" for value comparison!
pass
else:
[...]
for document in (yield cursor.to_list(length=100)):
datum.append(document)
[...]
self.write(bson.json_util.dumps({"result": datum}))
</code></pre>
<p>还有,而不是</p>
<pre><code>if value == 0:
pass
else:
[do_stuff]
</code></pre>
<p>最好这样做</p>
<pre><code>if value:
[do_stuff]
</code></pre>
<p>还有,<code>result = []</code>有什么用?你不能拿那张单子做任何事</p>