Python에서 깊게 중첩된 JSON 구조에서 값을 효율적으로 추출하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-10-31 07:37:30
원래의
480명이 탐색했습니다.

How to Efficiently Extract Values from Deeply Nested JSON Structures in Python?

JSON 구조에서 중첩 데이터 검색

복잡한 JSON 데이터를 구문 분석할 때 깊게 중첩된 구조에서 특정 값을 추출하는 것이 어려울 수 있습니다. 이 문서에서는 Python의 사전 및 목록 인덱싱 구문을 사용하여 중첩된 데이터를 효율적으로 탐색하는 방법을 간략히 설명하여 이 문제에 대한 솔루션을 제공합니다.

데이터 구조 이해

다음 JSON 데이터 예시를 고려하세요.

<code class="python">my_json = {
    "name": "ns1:timeSeriesResponseType",
    "value": {
        "queryInfo": {
            "creationTime": 1349724919000,
            # ... other data
        }
    }
}</code>
로그인 후 복사

특정 값 추출

"creationTime" 값에 액세스하려면 다음 구문을 사용하세요.

<code class="python">query_info = my_json["value"]["queryInfo"]
creation_time = query_info["creationTime"]</code>
로그인 후 복사

구분:

  • my_json["value"]는 외부 사전(파싱된 JSON 데이터 자체)의 "value" 키 값에 액세스합니다.
  • query_info["creationTime"]는 외부 사전의 "creationTime" 키 값에 액세스합니다. "queryInfo" 사전(my_json["value"]에서 가져옴).

따라서 Creation_time의 값은 1349724919000입니다.

추출 코드 일반화

가변 수준의 중첩이 있는 중첩 데이터의 경우 보다 일반적인 접근 방식을 사용할 수 있습니다.

<code class="python">def get_nested_value(data, key_path):
    keys = key_path.split(".")
    value = data
    for key in keys:
        value = value[key]
    return value</code>
로그인 후 복사

사용법:

<code class="python">creation_time = get_nested_value(my_json, "value.queryInfo.creationTime")</code>
로그인 후 복사

이 함수는 데이터 사전과 키 경로( 예: "value.queryInfo.creationTime") 원하는 값을 얻을 때까지 중첩된 값에 반복적으로 액세스합니다.

위 내용은 Python에서 깊게 중첩된 JSON 구조에서 값을 효율적으로 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿