엄청나다.
# 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를 사용하면 이렇게 아름답게 출력이 가능하다.