리스트 컴프리헨션

이동규 (Justin)·2020년 6월 13일
0
post-thumbnail

엄청나다.

# 1부터 10까지 정수를 순서대로 가지고 있는 리스트를 생성한다.

numbers = [x for x in range(10)]

print(numbers) # [1,2,3,4,5,6,7,8,9,10]

쉽다.

코드량을 비교해보자

a = [1,2,3,4,5,6,7,8,9,10]

# 이만큼의 코드를
result = [];
for i in a:
	if a%2==1:
    	result.append(i)
print(result) # [1,3,5,7,9]

# 이만큼으로 줄일 수 있다
result2 = [x for x in a if x%2==1]
print(result2) # [1,3,5,7,9]

개쩐다.

맨 앞에 나와있는 x가 리스트 안에 append 해줄 element를 의미하므로 이렇게 사용할 수 있다.

a = [1,2,3,4,5]

result = [2*x for x in a]

print(result) # [2,4,6,8,10]

중첩도 표현이 가능하다..ㄷㄷ

import pprint

meal = ['soup','chicken','hamburger']
dessert = ['apple','icecream','coffee']

result = [(x,y) for x in meal for y in dessert]

pp =pprint.PrettyPrinter()

pp.pprint(result)


# pretty printer 라는 것도 배워서 써먹어 보았다.

pprinter를 사용하면 이렇게 아름답게 출력이 가능하다.

https://wikidocs.net/22805

profile
Frontend Developer, JamStack, Ethereum

0개의 댓글