擅长:python、mysql、java
<p>您的代码中有不少问题和奇怪之处:</p>
<ul>
<li>使用<code>M</code>作为循环变量,从而覆盖存储在<code>M</code>中的乘数;最好像在第一个循环中那样使用<code>i</code></li>
<li>您的是追加到列表中,而不是用<code>numbers[i] = numbers[i] * M</code>或只是<code>numbers[i] *= M</code>覆盖数字</li>
<li>我看不出<code>> 0</code>和<code>< 0</code>检查与您的问题有什么关系,但是您可能应该检查<code>numbers[i]</code>,而不是{<cd9>},字母总是一样的</li>
<li>另外,我不明白为什么要将整个<code>numbers</code>列表分配给<code>numbers[i]</code>并打印出来。。。在</li>
</ul>
<p>您还可以使用列表理解并将其分配回原始列表的一部分:</p>
<pre><code>>>> N, M = 3, 10
>>> numbers = list(range(10))
>>> numbers[N::N] = [x*M for x in numbers[N::N]]
>>> numbers
[0, 1, 2, 30, 4, 5, 60, 7, 8, 90]
</code></pre>