1. 문제목적
map() 메서드를 공부해보자
2. 필요개념
map 함수는 파이썬에서 컬렉션 또는 반복 가능한(iterable) 다른 어떤 것의 모든 요소에 특정 함수를 적용하고 싶을 때 사용됩니다. 이 함수는 두 개의 주요 인자를 받습니다: 첫 번째는 적용할 함수, 두 번째는 그 함수가 적용될 반복 가능한 데이터입니다. map 함수의 결과는 map 객체이며, 이는 다시 리스트나 다른 컬렉션 타입으로 변환될 수 있습니다.
map 함수의 기본적인 사용법은 다음과 같습니다.
result = map(function, iterable)
- function: 적용할 함수입니다. 이 함수는 iterable의 각 요소에 적용됩니다.
- iterable: 함수가 적용될 반복 가능한 데이터입니다. 리스트, 튜플 등이 될 수 있습니다.
map 함수의 특징
- 여러 컬렉션에 대해 동일한 함수를 적용할 때 효율적입니다.
- 결과는 바로 리스트나 튜플로 변환할 수 있는 map 객체입니다.
- 대규모 데이터셋에 대한 변환을 간단하게 할 수 있도록 도와줍니다.
map 함수는 데이터를 변환하거나 데이터에 연산을 적용하는 등의 작업을 할 때 코드를 간결하게 만들어 줍니다. 이는 데이터 사이언스, 웹 개발 등 다양한 분야에서 유용하게 활용될 수 있는 중요한 기능입니다.
3. 코드작성
예를 들어, 리스트의 모든 요소를 정수로 변환하고 싶다고 가정해 봅시다
numbers = ["1", "2", "3", "4", "5"] # 문자열 리스트
int_numbers = list(map(int, numbers)) # 각 요소를 정수로 변환
print(int_numbers)
이 코드는 numbers 리스트의 각 요소를 정수로 변환하고, 그 결과를 int_numbers 리스트로 만듭니다. map 함수는 int 함수를 numbers의 각 요소에 적용하며, 결과적으로 문자열이 정수로 변환됩니다.
map 함수와 람다 함수의 결합
map 함수는 람다 함수와 함께 사용될 때 특히 유용합니다. 람다 함수는 이름 없이 선언할 수 있는 간단한 한 줄짜리 함수입니다. 이를 통해 복잡한 로직 없이 간단한 연산을 map 함수에 직접 전달할 수 있습니다.
예를 들어, 모든 요소를 제곱하고자 한다면 다음과 같이 할 수 있습니다:
numbers = [1, 2, 3, 4, 5] # 정수 리스트
squared = list(map(lambda x: x**2, numbers)) # 각 요소를 제곱
print(squared)
이 예제에서 lambda x: x**2는 각 요소 x에 대해 x**2를 계산하는 람다 함수입니다. map 함수는 이 람다 함수를 numbers 리스트의 각 요소에 적용합니다.
A,B,C = map(int, input().split())
print((A+B)%C)
print(((A%C) + (B%C))%C)
print((A*B)%C)
print(((A%C) * (B%C))%C)
4. 마무리
map()에 대해 이해할 수 있었습니다.
6. 문제링크
'알고리즘, 자료구조' 카테고리의 다른 글
[백준| 단계별로 풀어보기 2단계 | Python] 2884번 알람 시계 (0) | 2024.04.02 |
---|---|
[백준| 단계별로 풀어보기 1단계 | Python] 2588번 곱셈 (0) | 2024.04.01 |
[백준| 단계별로 풀어보기 1단계 | Python] 1000번 A+B (0) | 2024.03.27 |
[프로그래머스 | 코딩 기초 트레이닝 Lv.0 | JAVA] 문자열 곱하기 (0) | 2023.12.25 |
[프로그래머스 | 코딩 기초 트레이닝 Lv.0 | JAVA] 문자 리스트를 문자열로 변환하기 (0) | 2023.12.25 |