ホームページ  >  記事  >  バックエンド開発  >  PythonでのJSONファイルの読み取りと書き込みの手順

PythonでのJSONファイルの読み取りと書き込みの手順

高洛峰
高洛峰オリジナル
2017-03-08 11:29:201755ブラウズ

JSON (JavaScript Object Notation) は軽量のデータ交換形式です。これは ECMAScript のサブセットに基づいています。 JSON は完全に言語に依存しないテキスト形式を使用しますが、C 言語ファミリー (C、C++、Java、JavaScript、Perl、Python などを含む) に似た規則も使用します。これらの特性により、JSON は理想的なデータ交換言語になります。人間にとっては読み書きが容易であり、機械にとっても解析と生成が容易です (通常、ネットワーク伝送速度を上げるために使用されます)。

JSONはPythonではそれぞれlistとdictで構成されます。

これらはシリアル化に使用される 2 つのモジュールです:

json: 文字列と Python データ型間の変換に使用されます

pickle: Python 固有の型と Python データ型間の変換に使用されます

Json モジュール 4 つの関数を提供します: dumps、dump 、ロード、ロード

pickle モジュールは、ダンプ、ダンプ、ロード、ロードの 4 つの関数を提供します

json ダンプはデータ型を文字列に変換します ダンプはデータ型を文字列に変換し、ファイルに保存ロードは文字列を文字列に変換しますデータ型ロードはファイルを開き、文字列をデータ型に変換します。

json は異なる言語間でデータを交換できますが、pickle は Python 間でのみ使用されます。 JSON は最も基本的なデータ型のみをシリアル化でき、JSON は日付形式やクラス オブジェクトなど、一般的に使用されるデータ型 (リスト、辞書、リスト、文字列、数値など) のみをシリアル化できます。ジョスンにはそれができない。 Pickle は、クラスや関数を含むすべてのデータ型をシリアル化できます。

例:

dumps: Python の辞書を文字列に変換します

import json

test_dict = {'bigberg': [7600, {1: [['iPhone', 6300], ['Bike', 800], ['shirt', 300]]}]}
print(test_dict)
print(type(test_dict))
#dumps 将数据转换成字符串
json_str = json.dumps(test_dict)
print(json_str)
print(type(json_str))

PythonでのJSONファイルの読み取りと書き込みの手順

loads: 文字列を辞書に変換します

 new_dict = json.loads(json_str)
 print(new_dict)
 print(type(new_dict))

PythonでのJSONファイルの読み取りと書き込みの手順

dump: json ファイルにデータを書き込みます

 with open("../config/record.json","w") as f:
     json.dump(new_dict,f)
     print("加载入文件完成...")

PythonでのJSONファイルの読み取りと書き込みの手順

load: ファイルを開き、文字列をデータ型に変換します

with open("../config/record.json",'r') as load_f:
    load_dict = json.load(load_f)
    print(load_dict)
load_dict['smallberg'] = [8200,{1:[['Python',81],['shirt',300]]}]
print(load_dict)

with open("../config/record.json","w") as dump_f:
    json.dump(load_dict,dump_f)

PythonでのJSONファイルの読み取りと書き込みの手順

以上がPythonでのJSONファイルの読み取りと書き込みの手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。