擅长:python、mysql、java
<p>您正在将<code>max_abs_value</code>分配给循环内的<code>num[5]</code>。而是将其指定为列表的第一个元素,然后将其与其他元素进行比较</p>
<pre><code>def main():
print(maxabsinlst([-19, -3, 20, -1, 5, -25]))
def maxabsinlst(num):
max_abs_value = abs(num[0])
for x in num[1:]:
if abs(x) > max_abs_value:
max_abs_value = abs(x)
return max_abs_value
main()
</code></pre>
<p>或</p>
<pre><code>In [36]: max(abs(i) for i in [-19, -3, 20, -1, 5, -25])
Out[36]: 25
</code></pre>