이 튜토리얼에서는 Python의 map() 함수를 사용하여 2차원 배열(2D array)의 합계를 구하는 방법을 알아보겠습니다.
map() 함수는 함수(function)와 반복 가능한 객체(iterable), 두 개의 인자를 받습니다. 이 함수는 iterable의 모든 요소를 지정된 함수에 전달하고, 그 결과를 map 객체에 저장합니다. map 객체는 필요에 따라 리스트 같은 다른 반복 가능한 객체로 변환할 수 있습니다.
그럼 map() 함수를 활용해 2차원 배열의 합계를 구하는 과정을 단계별로 살펴보겠습니다.
구현 순서
리스트를 사용하여 2차원 배열을 초기화합니다.
sum 함수와 2차원 배열을 map() 함수에 전달합니다.
결과로 생성된 map 객체의 합계를 구하여 출력합니다.
예제 코드
아래 코드를 확인해 보세요.
# 2차원 배열 초기화
array = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
# sum 함수와 배열을 map()에 전달
result = list(map(sum, array))
# 결과 값 출력
# 각 하위 배열의 합이 담겨 있습니다.
print(result)실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
[6, 15, 24]
map() 함수는 배열의 각 행(하위 리스트)에 sum 함수를 적용했기 때문에, 결과에는 각 행의 합계인 6, 15, 24가 순서대로 저장됩니다.
전체 합계 구하기
이제 동일한 sum 함수를 사용하여 결과 값들의 전체 합계를 구해 보겠습니다.
# 결과 값들의 합계 계산 print(sum(result))
실행 결과
위 코드 조각을 앞선 프로그램에 추가한 후 실행하면 다음과 같은 출력을 얻습니다.
45
각 행의 합(6 + 15 + 24)을 더한 최종 결과인 45가 출력되는 것을 확인할 수 있습니다.
마무리
지금까지 Python의 map() 함수를 활용해 2차원 배열의 행별 합계와 전체 합계를 구하는 방법을 살펴보았습니다. map() 함수를 잘 활용하면 반복문 없이도 간결하고 가독성 높은 코드를 작성할 수 있습니다. 튜토리얼에 대해 궁금한 점이 있다면 댓글로 남겨 주세요.