인덱스 목록의 i 번째 요소는 우리가 알고 싶은 2D 목록에서 i 번째 1D 목록의 인덱스를 나타냅니다.
2D 목록과 인덱스 목록이 다음과 같은 경우 :
a = [[1,7,3],[9,0,8]]
list_ix = [1, 0]
원하는 결과는 [7,9]입니다.
현재 다음과 같은 루프를 사용하여이 작업을 수행합니다.
res = []
for i in range(len(list_ix)):
res.append(a[i][list_ix[i]])
그러나 이것은 실제 코드에서 지저분 해 보입니다.
이 작업을 수행하는 더 좋은 방법이 있습니까? 어떤 제안이라도 감사하겠습니다. 감사합니다!
나는 이것이 이렇게 할 수 있다고 생각합니다.
res = [a[idx][element] for idx, element in enumerate(list_ix)]
enumerate에 대한 자세한 내용은 https://docs.python.org/3/library/functions.html#enumerate를 참조하세요.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다