어떤 문제에서는 목록에 있는 각 요소의 최소값을 식별해야 합니다. 그러나 행렬 연산을 풀 때 행렬의 각 열의 최소값을 찾아야 합니다. 이를 위해서는 목록 목록에서 최소값을 찾아야 합니다. 행렬의 각 열은 목록의 목록이기 때문입니다.
min() 및 zip() 사용
아래 예제에서는 min() 및 zip()을 사용합니다. 여기에서 zip() 함수는 여러 목록의 동일한 인덱스에 있는 요소를 단일 목록으로 구성합니다. 그런 다음 for 루프를 사용하여 zip 함수의 결과에 min() 함수를 적용합니다.
예시
List = [[90, 5, 46], [71, 33, 2], [9, 13, 70]] print("List : " + str(List)) # using min()+ zip() result = [min(index) for index in zip(*List)] print("minimum of each index in List : " + str(result))
위의 코드를 실행하면 다음과 같은 결과가 나타납니다.
List : [[90, 5, 46], [71, 33, 2], [9, 13, 70]] minimum of each index in List : [9, 5, 2]
map() , min() 및 zip() 사용
위와 유사한 접근 방식으로 map() 및 zip()을 함께 사용할 수도 있습니다. 여기에 min()에 적용된 zip()의 결과가 있습니다. 이를 위해 for 루프 대신 map()을 사용합니다.
예시
List = [[0.5, 2.4, 7], [5.5, 1.9, 3.2], [8, 9.9, 10]] print("The list values are: " + str(List)) # using min() + map() + zip() result = list(map(min, zip(*List))) #result print("Minimum of each index in list of lists is : " + str(result))
위의 코드를 실행하면 다음과 같은 결과가 나타납니다.
The list values are: [[0.5, 2.4, 7], [5.5, 1.9, 3.2], [8, 9.9, 10]] Minimum of each index in list of lists is : [0.5, 1.9, 3.2]