擅长:python、mysql、java
<p>如果数据非常大,您可能需要隔离感兴趣的列,并执行max的“惰性”运行:</p>
<pre><code>list_of_lists = [..] # your data
target_idx = 2
col_of_interest = ((lst[target_idx], idx) for idx, lst in enumerate(list_of_lists))
max_val, location = max(col_of_interest)
print (list_of_lists[location][0], max_val)
# Name2 5
</code></pre>
<p>这不会生成中间列表(或其列表列表)。你知道吗</p>
<p>正如@Austin所指出的,max()可能不会提供您想要的结果,因为这些项是字符串,在这种情况下,您可能需要用<code>int()</code>预先组织惰性列:</p>
<p><code>col_of_interest = ((int(lst[target]), idx) for idx, lst in enumerate(list_of_lists))</code></p>