다음과 같은 사전 객체 목록이 있습니다.
[{'Id': 46, 'Date': '2016-05-09T00:00:00', 'Type': 1, 'PId': None, 'Ct': None},
{'Id': 108, 'Date': '2017-07-01T00:00:00', 'Type': 10, 'PId': None, 'Ct': None}]
Date
이 목록의 첫 번째 요소에서 추출하기 위해 이렇게 할 수 있습니다 .
list_dict[0].get('Date')
10에 Date
해당하는 것을 어떻게 얻을 수 Type
있습니까 (목록의 두 번째 요소임을 하드 코딩하지 않고)? Type
10이 존재하지 않으면 솔루션은 None을 반환해야 합니다.
--편집하다:
이전 버전의 질문은 목록이 json 객체라고 가정했으며 실제로는 사전입니다.
로 Type
설정된 첫 번째 사전을 가져 오는 간단한 루프를 사용할 수 있습니다 10
.
lst = [
{'Id': 46, 'Date': '2016-05-09T00:00:00', 'Type': 1, 'PId': None, 'Ct': None},
{'Id': 108, 'Date': '2017-07-01T00:00:00', 'Type': 10, 'PId': None, 'Ct': None},
]
type_10_date = None
for obj in lst:
if obj.get('Type') == 10:
type_10_date = obj.get('Date')
print(type_10_date)
# 2017-07-01T00:00:00
filter
선택하는 경우 내장 함수를 사용할 수도 있습니다.이 함수는 이터 러블 ( list
이 경우)에서 리턴되어야 하는 값을 결정하는 술어 함수를 사용합니다 . 참고 : 기본 제공 필터 기능에서 개체를 다시 list
가져 오는 Python 3 사용자를위한 변환을 포함했습니다 filter
.
type_10_objs = list(filter(lambda d: d.get('Type') == 10, lst))
if type_10_objs: # This could be an empty list!
print(type_10_objs[0].get('Date'))
# 2017-07-01T00:00:00
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다