
from Scratch
33
기본적으로
sort
메서드와
sorted
함수는 리스트의 각 항목을 일일이 비교해서
오름차순으로 정렬해 준다.
만약 리스트를 내림차순으로 정렬하고 싶다면 인자에
reverse=True
를 추가해
주면 된다. 그리고 리스트의 각 항목끼리 서로 비교하는 대신
key
를 사용하면 지
정한 함수의 결괏값을 기준으로 리스트를 정렬할 수 있다.
#
절댓값의
내림차순으로
리스트를
정렬
x = sorted([-4, 1, -2, 3], key=abs, reverse=True) #
결과는
[-4, 3, -2, 1]
#
빈도의
내림차순으로
단어와
빈도를
정렬
wc = sorted(word
_
counts.items(),
key=lambda word
_
and
_
count: word
_
and
_
count[1],
reverse=True)
2.17
리스트 컴프리헨션
기존의 리스트에서 특정 항목을 선택하거나 변환시킨 결과를 새로운 리스트에
저장해야 하는 경우도 자주 발생한다. 가장 파이썬스럽게 처리하는 방법은
리스
트 컴프리헨션(
list
comprehension
)이다.
even
_
numbers = [x for x in range(5) if x % 2 == 0] # [0, 2, 4]
squares = [x * x for x in range(5)] # [0, 1, ...