더북(TheBook)

다음 예제에서는 lambda 키워드로 함수를 정의했다. 이 함수를 key로 사용하면 Tool 객체로 이뤄진 리스트를 이름(name)에 따라 알파벳순으로 정렬한다..

print('미정렬:', repr(tools))
tools.sort(key=lambda x: x.name)
print('\n정렬:', tools)

>>>
미정렬: [Tool('수준계', 3.5), Tool('해머', 1.25), Tool('스크류드라이버', 0.5), Tool('끌', 0.25)] 
정렬: [Tool('끌', 0.25), Tool('수준계', 3.5), Tool('스크류드라이버', 0.5), Tool('해머', 1.25)]

쉽게 weight로 정렬하는 람다 함수를 만들어서 sortkey 파라미터로 전달할 수 있다.

tools.sort(key=lambda x: x.weight)
print('무게순 정렬:', tools)

>>>
무게순 정렬: [Tool('끌', 0.25), Tool('스크류드라이버', 0.5), Tool('해머', 1.25), Tool('수준계', 3.5)]
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.