728x90

2개의 키를 람다 표현식으로 정렬하는 문법
>>> s = ['2 A', '1 B', '4 C', '1 A']
>>> sorted(s)
['1 A', '1 B', '2 A', '4 C']
>>> def func(x):
return x.split()[1], x.split()[0]
>>> s.sort(key = func)
>>> s
['1 A', '2 A', '1 B', '4 C']
>>> v = ['2 A', '1 B', '4 C', '1 A']
>>> v.sort(key = lambda x: (x.split()[1], x.split()[0]))
>>> v
['1 A', '2 A', '1 B', '4 C']
그러나 람다 표현식은 코드가 길어지고 map이나 filter와 함께 섞어서 사용하기 시작하면 가독성이 매우 떨어질 수 있으므로 주의가 필요하다.
참고 서적
파이썬 알고리즘 인터뷰 - 교보문고
95가지 알고리즘 문제 풀이로 완성하는 코딩 테스트 | [이 책의 구성][1부 코딩 인터뷰]1장, ‘코딩 인터뷰’에서는 코딩 테스트에 대한 소개와 어떻게 하면 시험을 잘 치를 수 있을지, 문제 풀이
www.kyobobook.co.kr
'컴퓨터&빅데이터&AI > 컴퓨터공학' 카테고리의 다른 글
주소 지정 방식 (0) | 2021.06.27 |
---|---|
다익스트라 알고리즘 코드 응용 (0) | 2021.05.10 |
댓글