오늘은 “한 번에 끝내는 파이썬 웹 개발 초격차 패키지 Online” 의 파트 2의 map, filter함수를 듣고 정리해보았다. 참고로 이 포스팅은 공부용으로 강의 내용을 요약한 것으로 자세한 강의 내용은 위 링크를 참조 할 것.



아래는 공부 인증 사진.


2022-06-08-Python-Photo1

2022-06-08-Python-Photo2



04. map, filter 함수

1. map 함수

  • map 함수 사용 방법
map(함수, 순서가있는자료형)

# 예시
map(int, ['3','4','5','6']
  • 순서가 있는 자료형: 리스트([]), 튜플(()), 딕셔너리({}), range 객체
  • 함수 = int (데이터를 정수형으로 바꿔주는 함수)

2022-06-08-Python-Photo3

  • 리스트의 각각의 데이터가 int 함수를 거쳐 그 결과를 map 오브젝트로 만들어낸다.

  • map 함수를 리스트로 감싸주면 리스트로 결과를 받을 수 있다.

list(map(함수, 순서가있는자료형))

# 예시
list(map(int, ['3','4','5','6']))

Map 함수를 이용한 간단한 예제: 리스트 모든 요소의 공백 제거

  • for문 사용했을 때
items = [' 로지덱마우스 ', ' 앱솔키보드 ']
for i in range(len(items)):
    items[i] = items[i].strip()
  • map 사용했을 때 (1)
def strip_all(x):
    return x.strip()

items = [' 로지덱마우스 ', ' 앱솔키보드 ']

items = list(map(strip_all, items))
  • strip_all 이라는 함수를 정의하고, 매개변수로는 x를 받는다.

2022-06-08-Python-Photo4

  • strip_all 함수를 거쳐 앞뒤 공백이 사라진 데이터가 map객체에 담긴다.

  • list 함수를 거쳐 각 데이터가 다시 리스트로 만들어진 뒤 items에 할당된다.

  • map 사용했을 때 (2)

def strip_all(x):
    return x.strip()

items = [' 로지덱마우스 ', ' 앱솔키보드 ']

items = list(map(strip_all, items))
  • 한번 쓰고 말 함수에 이름을 붙이기 귀찮은 경우 ⇒ 람다 함수 이용

  • 람다 함수를 사용했을 때

items = [' 로지덱마우스 ', ' 앱솔키보드 ']

items = list(map(lambda x:x.strip(), items))

2. filter 함수

  • filter 함수 사용 방법
filter(함수, 순서가있는 자료형)

def func(x):
    return x<0

filter(func, [-3, -2, 0, 5, 7,])
  • 동작 과정

2022-06-08-Python-Photo5

  • 리스트 중 func함수가 true일 때 결과를 filter 오브젝트로 만들어 낸다.

Filter 함수 예제: 리스트에서 길이가 3이하인 문자들만 필터링

  • for문 사용했을 때
animals = ['cat', 'tiger', 'dog', 'bird', 'monkey']

result = []

for i in animals:
    if len(i) <= 3:
        result.append(i)
  • filter문 사용했을 때
animals = ['cat', 'tiger', 'dog', 'bird', 'monkey']

def word_check(x):
    return len(x) <= 3

result = list(filter(word_check, animals))
  • 람다 함수를 사용했을 때
animals = ['cat', 'tiger', 'dog', 'bird', 'monkey']

result = list(filter(lambda x:len(x) <= 3, animals)



이번 포스팅에서는 강의의 파트 2의 map, filter함수를 알아보았다. 다음 포스팅에서는 map, filter 함수를 실습해 보도록 하자.


본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.



#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #캐시백챌린지 #캐시백 #환급챌린지 #한번에끝내는파이썬웹개발초격차패키지Online