안녕세계

[Python] list에서 dictionary 속성 검색 본문

[Python] list에서 dictionary 속성 검색

Junhong Kim 2019. 1. 10. 23:45
728x90
반응형


list에서 dictionary 속성(property)을 검색하는 방법에 대해 알아봅니다.

dicts = [
  {'id': 1, 'name': 'kim', 'age': 10},
  {'id': 2, 'name': 'lee', 'age': 20},
  {'id': 3, 'name': 'park', 'age': 30},
  {'id': 4, 'name': 'kim', 'age': 40},
]


예제 (Python3 - 속성 검색)

- 가장 먼저 검색되는 dictionary가 반환됩니다.

ret = next((item for item in dicts if item['id'] == 1), None)
print(ret)
# {'id': 1, 'name': 'kim', 'age': 10}


예제 (Python2 - 속성 검색)

- 가장 먼저 검색되는 dictionary가 반환됩니다.

ret = (item for item in dicts if item['id'] == 1).next()
print ret
# {'id': 1, 'name': 'kim', 'age': 10}


예제 (Python3 - 인덱스 찾기)

ret = next((index for (index, item) in enumerate(dicts) if item['id'] == 1), None)
print(ret)
# 0

References

https://stackoverflow.com/questions/8653516/python-list-of-dictionaries-search

https://stackoverflow.com/questions/4391697/find-the-index-of-a-dict-within-a-list-by-matching-the-dicts-value

728x90
반응형

'Language > Python' 카테고리의 다른 글

[Python] stream 및 file에 로그 남기기 (logging)  (1) 2019.01.12
[Python] 랜덤 문자열 생성  (0) 2019.01.11
[Python] Object 속성 확인  (0) 2019.01.09
[Python] 2차원 list 중복 제거  (0) 2019.01.08
[Python] string 자료형  (0) 2019.01.07
Comments