코딩라이브러리/파이썬

[파이썬] json data 정렬 시 sorted의 key 값으로 설정하기

유니네 라이브러리 2024. 9. 12. 14:12

json 데이터의 특정 key 값으로 정렬 시, sorted()의 key 값으로 정렬하는 법을 알아본다.

 

코딩을 하다 보면 아래와 같은 json data를 많이 본다.

#많이 보이는 json data
json_data = [
    { 'blogSite' : 'tistory',
      'blogUrl' : 'http://yuneenelife.tistory.com',
      'blogCategory' : 'IT'
    },
    { 'blogSite' : 'naver',
      'blogUrl' : 'http://blog.naver.com/yuneenelife',
      'blogCategory' : 'trip'
    }
]

 

위 데이터에서 특정 key 값으로 정렬하고 싶을 때는 아래와 같이 sorted()를 사용한다.

  • sorted()에서 lambda x: x[’정렬을 원하는 key 값’] 으로 정렬
  • reverse=False는 오름차순, True는 내림차순
"""
특정 key 값으로 정렬하고 싶을 때는 아래와 같이 sorted()를 사용한다.
"""
json_data = [
    { 'blogSite' : 'tistory',
      'blogUrl' : 'http://yuneenelife.tistory.com',
      'blogCategory' : 'IT'
    },
    { 'blogSite' : 'naver',
      'blogUrl' : 'http://blog.naver.com/yuneenelife.tistory',
      'blogCategory' : 'trip'
    }
]
#sorted()에서 lambda x: x[’정렬을 원하는 key 값’] 으로 정렬
#reverse=False는 오름차순, True는 내림차순
sorted_json_date = sorted(json_data, key=lambda x: x['blogUrl'], reverse=False)
print("json_data :", json_data)
print("sorted_json_date :", sorted_json_date)
"""
json_data :[
  {'blogSite': 'tistory', 'blogUrl': 'http://yuneenelife.tistory.com', 'blogCategory': 'IT'}, 
  {'blogSite': 'naver', 'blogUrl': 'http://blog.naver.com/yuneenelife', 'blogCategory': 'trip'}]
sorted_json_date :[
  {'blogSite': 'naver', 'blogUrl': 'http://blog.naver.com/yuneenelife', 'blogCategory': 'trip'}, 
  {'blogSite': 'tistory', 'blogUrl': 'http://yuneenelife.tistory.com', 'blogCategory': 'IT'}]
"""

 

☞ lambda 함수 관련 글은 이전 글 참고

 

파이썬 람다 함수 lambda (with 백준 1181)

lambda (람다) 표현식 lambda 키워드로 함수로 사용할 수 있으며 일반적인 함수 정의의 편의 문법임.lambda a, b: a+b 와 같이 함수 객체가 있는 곳이면 어디나 lambda 함수가 사용될 수 있다. 제약 문법적

yuneenelife.tistory.com

☞ 파이썬 정렬 관련 글은 이전 글 참고

 

파이썬 정렬 sort, sorted (with 백준 2750, 5597, 1181)

파이썬 정렬은 sort(), sorted()를 사용한다. 내장함수 sort()이 메서드는 리스트 내 항목 간의 비교만 사용하여 정렬한다.정렬 후 리스트는 수정된 상태로 유지된다.반환값이 없다.리스트 타입만 사

yuneenelife.tistory.com