For 루프에 중첩된 단일 라인

| |

파이썬에서 행렬을 전치하는 이 함수를 작성했습니다.

def transpose(m): height = len(m) width = len(m[0]) return [ [ m[i ][j] for i in range(0, height) ] for j in range(0, width) ] 

이 과정에서 한 줄이 중첩되는 방식을 완전히 이해하지 못한다는 것을 깨달았습니다. for 루프가 실행됩니다. 다음 질문에 답하여 이해를 도와주세요:

  1. 이 for 루프가 실행되는 순서는 무엇입니까?
  2. 3중 중첩 for 루프가 있는 경우 , 어떤 순서로 실행됩니까?
  3. 중첩되지 않은 for 루프와 동일한 것은 무엇입니까?

주어진,

[ function( i,j) for i,j in object ] 
  1. 이 for 루프 구조를 사용하려면 객체가 어떤 유형이어야 합니까?
  2. 순서는 어떻게 되나요? 여기서 i와 j는 객체의 요소에 할당됩니까?
  3. 다른 for 루프 구조로 시뮬레이션할 수 있나요?
  4. 이 for 루프는 for 유사하거나 다른 구조로 중첩될 수 있습니까? 루프는 어떻게 생겼나요?

아디 정보도 감사합니다.