【関連する学習に関する推奨事項: Python ビデオ #]
JSON の概要
JSON (JavaScript Object Notation) は軽量のデータ交換形式です。人間にとって読み書きしやすい。機械による解析と生成も簡単です。これは、標準 ECMA-262 第 3 版 (1999 年 12 月) のサブセットである JavaScript プログラミング言語に基づいています。 JSON は完全に言語に依存しないテキスト形式を使用しますが、C 言語ファミリー (C、C、C#、Java、JavaScript、Perl、Python などを含む) に似た規則も使用します。これらの特性により、JSON は理想的なデータ交換言語になります。
JSON の 2 つの構造
名前と値のペアのコレクション。さまざまな言語では、オブジェクト、レコード、構造体、辞書、ハッシュ テーブル、キー付きリスト、または連想配列として理解されます。
- #値の順序付きリスト。ほとんどの言語では、これは配列として理解されます。
Python での JSON の利用
Python で JSON を操作する場合、json 標準ライブラリを導入する必要があります。
import json
型変換
Python から JSON への型変換:
json . dump()
#1. Python dict タイプを JSON
person_dict = {'name': 'pig', 'age': 18, 'sex': 'man', '故郷': '江西省福州'}
##indent パラメータはインデントされたスペースの数ですperson_dict_json = json.dumps(person_dict, indent=4)print(person_dict_json, ' \n')
2. Python リスト型から JSON への変換person_list = ['pig', 18, 'man', 'Jiangxi Fuzhou']person_list_json = json.dumps(person_list)print(person_list_json, '\n')
3. Python オブジェクト タイプを JSONperson_obj に変換します = person('pig', 18 , 'man', 'Jiangxi Fuzhou')
中央の匿名関数は、オブジェクトのすべての属性を取得する辞書形式ですperson_obj_json = json .dumps(person_obj, default= lambda obj: obj.
dict
, indent=4)print(person_obj_json, '\n')JSON から Python 型への変換:
json.loads( )
4. JSON から Python への変換 typeperson_json = '{ “name”: “pig”,”age ”: 18, “性別”: "男性", "出身地": "江西省福州"}'
person_json_dict = json.loads(person_json)print(type(person_json_dict), '\n')
5. JSON から Python へのリスト タイプ person_json2 = '["pig", 18, "man", "江西福州"]'
person_json_list = json.loads(person_json2 )print(type( person_json_list), '\n')
6. JSON から Python へのカスタム オブジェクト タイプperson_json = '{ "name": "pig ","age ": 18, "sex": "man", "hometown": "Fuzhou, Jiangxi"}'
object_hook パラメータは、dict オブジェクトをカスタムオブジェクトperson_json_obj = json.loads(person_json, object_hook=lambda d: person(d['名前'], d['年齢'], d['性別'], d['出身地'] ))print(type(person_json_obj ), '\n')
Python と JSON データ型の対応表
#JSON
Python |
|
##オブジェクト
dict
|
array |
list
|
string |
str
| number |
int、long、float
|
true、false |
True、False
|
null |
None
|
|
注意点
JSON キー名と文字列は二重引用符で囲む必要があります, Python では一重引用符も文字列として表現できるため、これは比較的犯しやすい間違いです。 Python 型を JSON に変換する場合、load/dump または loads\dumps を使用する必要がありますか?
s を追加しないメソッドには、ファイルパスを表す追加パラメーター fp があり、最後にファイルを書き込む追加操作があります。
したがって、覚えるときは次のように覚えてください。
s を追加すると文字列 (str) に変換することを意味し、s を追加しないことはファイルに変換することを意味します。
関連する推奨事項:
プログラミング ビデオ コース
以上がPython での JSON の使用の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。