擅长:python、mysql、java
<p>如果您不想在每次迭代时重置<code>Sighting</code>和<code>Coordinates</code>变量,则需要将它们放在<code>while</code>循环之外。你知道吗</p>
<p>然而,代码有很多错误。不用尝试,我发现:</p>
<ol>
<li>您没有<code>while</code>循环的退出条件。请不要这样对这个可怜的网站。你基本上是在发送垃圾邮件。你知道吗</li>
<li><code>file.close</code>应该是<code>file.close()</code>,但总的来说,您应该只需要打开一次文件,而不是每次循环都打开一次。打开一次,完成后关闭(假设您将添加一个退出条件)。你知道吗</li>
<li>从<code>0</code>(<code>response.json()[0:]</code>)切片是不必要的。默认情况下,列表从索引0开始。这可能是一个复杂的方式来获得一个新的名单,但这似乎没有必要在这里。你知道吗</li>
<li><code>Coordinates</code>不应是100<code>None</code>的硬编码列表。只需使用<a href="https://docs.python.org/3/library/stdtypes.html#set" rel="nofollow">^{<cd11>}</a>跟踪现有坐标即可。你知道吗</li>
<li>彻底摆脱<code>Sighting</code>。如果你一次又一次地发出请求是没有意义的。如果您想从一个响应遍历pokémon,如果需要索引,请使用<a href="https://docs.python.org/3/library/functions.html#enumerate" rel="nofollow">^{<cd13>}</a>。你知道吗</li>
<li>对Python变量使用<a href="https://en.wikipedia.org/wiki/Snake_case" rel="nofollow">snake case</a>通常是一种很好的做法。你知道吗</li>
</ol>