ホームページ > バックエンド開発 > Python チュートリアル > 埋め込まれた JSON ドキュメントを文字列として含むネストされた JSON データにアクセスするにはどうすればよいですか?

埋め込まれた JSON ドキュメントを文字列として含むネストされた JSON データにアクセスするにはどうすればよいですか?

DDD
リリース: 2024-11-28 16:03:11
オリジナル
522 人が閲覧しました

How to Access Nested JSON Data with Embedded JSON Documents as Strings?

埋め込まれた JSON ドキュメントを使用してネストされた JSON データにアクセスする方法

複雑な JSON データを解析しているときに、埋め込まれた JSON ドキュメントが、プライマリ JSON 構造。これらの埋め込みドキュメントのコンテンツにアクセスするには、次の手順に従います。

問題:

次の JSON 構造を考えてみましょう:

{ <br> "ステータス": "200"、<br> "メッセージ": "",<br> "data": {</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">"time": "1515580011",
"video_info": [
  {
      "announcement": "{\n\t\"announcement_id\":\"6\",\n\t\"name\":\"INS\u8d26\u53f7\",\n\t\"icon\":\"http:\\/\\/liveme.cms.ksmobile.net\\/live\\/announcement\\/2017-08-18_19:44:54\\/ins.png\",\n\t\"icon_new\":\"http:\\/\\/liveme.cms.ksmobile.net\\/live\\/announcement\\/2017-10-20_22:24:38\\/4.png\",\n\t\"videoid\":\"15154610218328614178\",\n\t\"content\":\"FOLLOW ME PLEASE\",\n\t\"x_coordinate\":\"0.22\",\n\t\"y_coordinate\":\"0.23\"}\n",
      "announcement_shop": ""
  }
]
ログイン後にコピー

}
}

埋め込まれた JSON の "content" 値にアクセスするには「アナウンス」内のドキュメントでは、次のようなことを試みることができます:

replay_data = raw_replay_data'data'[0]<br>payment =replay_data['payment']

ただし、アナウンスメントはより多くの JSON データを表す文字列になり、アナウンスメント['content'] の結果にインデックスが付けられます。無効な文字列による TypeError

解決策:

目的の文字列に正しくアクセスするには、次の手順を実行します。

  1. json をインポートするmodule:

import json

  1. 埋め込まれた JSON ドキュメントを Python 辞書としてロードします:

payment_dict = json.loads(payment)

  1. ロードされた辞書内の目的のキーにアクセスします:

desired_content = Notice_dict['content']

この場合、desired_content には文字列「FOLLOW ME PLEASE」が含まれます。

詳細な説明:

複雑な JSON 構造をナビゲートするには、「データを見つめ」てパスを特定することが重要です

  1. パスを特定します: この例では、「コンテンツ」値へのパスは次のとおりです:
  • data
  • video_info (リスト)
  • Firstリスト内の辞書
  • アナウンスメント (JSON を表す文字列)
  • コンテンツ (ロードされた JSON 内)
  1. 下降のパス:
  • data = data['data'] で開始します。
  • リストのインデックス付けを使用して、video_info の最初の辞書にアクセスします。
  • アナウンスメントの値を変数に代入します。
  • アナウンスメントに保存されている JSON 文字列を次を使用して読み込みます。 json.loads().
  • ロードされた辞書内の目的の値にアクセスします。

このアプローチに従うことで、複雑な JSON 構造内のネストされたデータに効率的にアクセスして操作できます。

以上が埋め込まれた JSON ドキュメントを文字列として含むネストされた JSON データにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート