擅长:python、mysql、java
<p>为什么不使用一个变量进行比较直到<code>length - 1</code>?而且,每次迭代都会将<code>oldmax</code>重置为第一个元素,从而导致结果不准确。设置初始值,但不要更改:</p>
<pre><code>max_value = y[0]
for i in range(len(y) - 1):
if max_value <= y[i + 1]
max_value = y[i + 1]
</code></pre>
<p>现在只需要一个变量<code>max_value</code>,它有第一个元素的初始值。由于元素<code>i + 1</code>的访问,循环从第一个元素转到<code>length - 1</code>。如果最大值小于下一个值,请将最大值重新指定给下一个值。我还消除了额外的,如果没有做什么,只有检查,如果它是更大的。你知道吗</p>
<hr/>
<p>您只需使用内置的<a href="https://docs.python.org/2/library/functions.html#max" rel="nofollow">^{<cd6>}</a>函数就可以摆脱上面的所有代码,该函数接受任何iterable并返回最大值:</p>
<pre><code>max_value = max(y)
</code></pre>