<p>既然你是初学者,我就试着把步骤分解清楚。您希望遍历<code>aList</code>。因为您关心每个元素的索引以及元素本身,所以需要使用<a href="http://book.pythontips.com/en/latest/enumerate.html" rel="nofollow noreferrer">^{<cd2>}</a>:</p>
<pre><code>for idx, val in enumerate(aList):
</code></pre>
<p>在这个循环中,您可以使用<code>idx</code>获取当前索引的值,使用<code>val</code>获取当前正在查看的元素的值。然后要检查<code>val</code>是否小于常量:</p>
<pre><code>for idx, val in enumerate(aList):
if val < constantToCompare:
</code></pre>
<p>如果是,则将<code>bList</code>中对应的元素设置为零:</p>
<pre><code>for idx, val in enumerate(aList):
if val < constantToCompare:
bList[idx] = 0
</code></pre>
<p>要获得更简洁的外观,可以改用<a href="http://www.secnetix.de/olli/Python/list_comprehensions.hawk" rel="nofollow noreferrer">list comprehension</a>(一种快速创建列表的方法):</p>
<pre><code>bList = [bList[idx] for idx, val in enumerate(aList) if val >= constantToCompare else 0]
</code></pre>
<p>我不知道你说的<code>constantToCompare</code>增加是什么意思。如果要多次执行此操作,可以将其全部打包到另一个循环中:</p>
<pre><code>for constantToCompare in range(start_val, end_val+1):
bList = [bList[idx] for idx, val in enumerate(aList) if val >= constantToCompare else 0]
</code></pre>
<p>如果希望在浏览列表时增加,可以在循环中添加另一行:</p>
<pre><code>for idx, val in enumerate(aList):
if val < constantToCompare:
bList[idx] = 0
constantToCompare += 1
</code></pre>
<p>为了简洁起见,我使用了列表理解,但在实际代码中,为了可读性,我可能更喜欢较长的版本。你知道吗</p>
<p>希望这有帮助!你知道吗</p>