m, n = len(A), len(A[0])
ranges = [(min(A[i][j] for i in range(m)), max(A[i][j] for i in range(m))) for j in range(n)]
注:位于 list comprehension 中的 for 循环,如果是并列关系,如:
[ for i in range(m) for j in range(n)]
则按照从左到右的顺序执行,如果存在嵌套,也即被括号包括:
[min(A[i][j] for i in range(m)) for j in range(n)]
则先执行外层的,也即先固定列,再遍历每一行;