리셋 되지 말자

[python 문법] map, filter, 람다 표현식, 리스트 컴프리헨션, 리스트 컴프리헨션 본문

Python

[python 문법] map, filter, 람다 표현식, 리스트 컴프리헨션, 리스트 컴프리헨션

kyeongjun-dev 2021. 2. 26. 15:32

람다 표현식

# 람다 표현식
c = list(map(lambda x: x+10, [1, 2, 3]))
print(c)

 

리스트 컴프리헨션(List Comprehension)

리스트 컴프리헨션이란 기존 리스트를 기반으로 새로운 리스트를 만들어내는 구문이다.
map과 filter를 사용하는 것보다 가독성이 높다고 한다.

홀수인 경우 2를 곱해 출력하는 리스트 컴프리헨션의 적용 전, 후

# 리스트 컴프리헨션 적용 전
d = []
for n in range(0, 10+1):
    if n % 2 == 1:
        d.append(n*2)
print(d)

# 리스트 컴프리헨션 적용 후
d = [n * 2 for n in range(0, 10+1) if n % 2 == 1]
print(d)

 

2.7 이후의 딕셔너리에 애한 컴프리헨션

# 딕셔너리 컴프리헨션 적용 전
a = {}
for key, value in origianl.items():
    a[key] = value

# 딕셔너리 컴프리헨션 적용 후
a = {key: value for key, value in original.items()}

 

간결하게 작성이 가능하지만 무리해서 복잡하게 사용할 경우 가독성을 떨어뜨릴 수 있으므로 적절히 사용하는게 중요.대체로 표현식은 2개를 넘지 않도록 해야한다.

'Python' 카테고리의 다른 글

[python 공부] 파이썬 순열, 조합  (0) 2021.04.09
[python 공부] 프로그래머스 코딩 팁 기록  (0) 2021.04.09
[python 문법] 타입 힌트  (0) 2021.02.26
[python 문법] 네이밍 컨벤션  (0) 2021.02.26
[python 공부] .index  (0) 2020.11.02
Comments