JSON (JavaScript Object Notation) は、アプリケーション間でデータを交換するために使用される一般的なデータ形式です。これは、人間が読み書きしやすく、機械が解析して生成するのが簡単な軽量形式です。
Python 形式の JSON
Javascript Object Notation の略称 JSON 軽量のデータ交換フォーマットです。エンコードします Python オブジェクト JSON 文字列として変換し、JSON 文字列を Python オブジェクトにデコードします。
- Github などの API の多くは、結果をこの形式で送信します。 JSON はおそらく、AJAX アプリケーションの Web サーバーとクライアント間の通信に最も広く使用されていますが、問題の領域に限定されません。
- たとえば、次のようなエキサイティングなプロジェクトを構築しようとしているとします。 これ 必要な結果をレンダリングするには、JSON 出力をフォーマットする必要があります。それでは、JSON モジュールについて詳しく見ていきましょう。 パイソン JSON 出力のフォーマットを提供します。
Python JSON 関数
Python JSON クラス
変換はこれに基づいています 換算表 。
Python JSONエンコーディング
JSON モジュールは、Python オブジェクトを JSON 形式にエンコードするための次の 2 つのメソッドを提供します。使用します ダンプ() ダンプ() および JSON.Encoder クラス。 json.dump() メソッドは、Python でシリアル化されたオブジェクトを JSON 形式のデータとしてファイルに書き込むために使用されます。 JSON。 dumps() メソッドは、Python オブジェクトを JSON 形式の文字列にエンコードします。
Python3from io import StringIO import json fileObj = StringIO() json.dump(['Hello' 'Geeks'] fileObj) print('Using json.dump(): '+str(fileObj.getvalue())) class TypeEncoder(json.JSONEncoder): def default(self obj): if isinstance(obj type): return str(obj) print('Using json.dumps(): '+str(json.dumps(type(str) cls=TypeEncoder))) print('Using json.JSONEncoder().encode' + str(TypeEncoder().encode(type(list)))) print('Using json.JSONEncoder().iterencode' + str(list(TypeEncoder().iterencode(type(dict)))))
出力 :
Using json.dump(): ['Hello' 'Geeks'] Using json.dumps(): '' Using json.JSONEncoder().encode'' Using json.JSONEncoder().iterencode['''']
Python で JSON をデコードする
JSON 文字列のデコードは、組み込みメソッドの助けを借りて行われます。 json.loads() と json.load() Python の JSON ライブラリ。 json.loads() は、JSON 文字列ドキュメントを Python辞書 json.load() は、ファイルから JSON ドキュメントを読み取るために使用されます。
Python3from io import StringIO import json fileObj = StringIO('['Geeks for Geeks']') print('Using json.load(): '+str(json.load(fileObj))) print('Using json.loads(): '+str(json.loads ('{'Geeks': 1 'for': 2 'Geeks': 3}'))) print('Using json.JSONDecoder().decode(): ' + str(json.JSONDecoder().decode ('{'Geeks': 1 'for': 2 'Geeks': 3}'))) print('Using json.JSONDecoder().raw_decode(): ' + str(json.JSONDecoder().raw_decode('{'Geeks': 1 'for': 2 'Geeks': 3}')))
出力:
Using json.load(): ['Geeks for Geeks'] Using json.loads(): {'for': 2 'Geeks': 3} Using json.JSONDecoder().decode(): {'for': 2 'Geeks': 3} Using json.JSONDecoder().raw_decode(): ({'for': 2 'Geeks': 3} 34)