擅长:python、mysql、java
<p>这不起作用的原因是Python变量只是名称。每次通过循环时,<code>el</code>最初被设置为下一个列表索引中的名称。例如,如果下一个值是3,那么每当<code>el</code>出现时,计算机就会用3替换它。你知道吗</p>
<p>但是当你有一个像<code>el = 2</code>这样的语句时,你所做的就是告诉计算机从现在起,<code>el</code>只是数字2的另一个名称。您实际上还没有编辑基础列表元素。为此,您需要执行以下操作:</p>
<pre><code>for i in range(len(list)):
print(list[i])
if list[i] < 1:
list[i] = 0
elif list[i] > 1:
list[i] = 2
</code></pre>
<p>这样做的原因是,您实际上是在更改列表元素本身,而不是为每个列表元素指定一个名称,然后将该名称指定给其他元素。你知道吗</p>