본문 바로가기
프로그래머스/Lv.1

PCCE 기출문제 > 데이터 분석 - Pyton, sorted, lambda

by 아찌방 2024. 12. 7.

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/250121

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

코드

 

def solution(data, ext, val_ext, sort_by):
    compiles = {"code" : 0, "date" : 1, "maximum" : 2, "remain" : 3}
    ext_index = compiles[ext]
    sort_index = compiles[sort_by]
    
    filtered_data = [row for row in data if row[ext_index] < val_ext]
    return sorted(filtered_data, key=lambda x: x[sort_index])

 

 

줄이려면 한 줄로도 되는 코드지만

 

가독성을 위해 단계별로 진행을 했습니다.

 

딕셔너리로 품목별 인덱스를 기록해둔 후

 

변수에 그 값들을 저장해서 사용했습니다.

 

그리고 1차 조건을 통과하는 항목들을 따로 리스트로 저장한 후

 

sorted를 통해 조건에 맞춰 정렬해 줬습니다.

 

sorted의 lambda는 간단하지만 강력하니 사용법을 익혀두는게 무조건 좋습니다.

 

 

 

 

다음에 또 봐요

 

728x90