• sort에 key(함수)라는 파라미터를 이용해 정렬 기준을 설정해 비교 할 수 있음

    # lambda 라는 함수를 key 로 사용
    # name 알파벳순으로 정렬
    tools.sort(key=lambda x: x.name)
    
  • 문자열의 경우, 정렬하기 전에 key 함수를 사용해 원소 값을 변형할 수 있음

    # 소문자로 변경해서 비교
    places.sort(key=lambda x: x.lower())
    
  • 여러 기준으로 정렬해야할 때

    # weight(숫자)로 정렬 후 name(문자) 정렬
    power_tools.sort(key=lambda x: (x.weight, x.name))
    
    • 모든 비교 기준이 동일함(오름차순이거나 내림차순이거나)

      # 숫자값인 경우 부호반전(-) 연산자를 이용해 정렬방향 혼합 가능
      power_tools.sort(key=lambda x: (-x.weight, x.name))
      
      • 따로 sort 두번 사용해도 됨
  • 정렬 기준 우선순위의 역순으로 정렬을 수행해야함

    • weight 에 의해 내림차순으로 정렬하고 name에 의해 오름차순으로 정렬된 리스트 하기

      → name을 사용해 오름차순으로 정렬하고 weight를 사용해 내림차순으로 정렬하기