ホームページ  >  記事  >  バックエンド開発  >  Python jsonモジュールの一般的なメソッドは何ですか?

Python jsonモジュールの一般的なメソッドは何ですか?

PHPz
PHPz転載
2023-04-25 08:10:091039ブラウズ

JSON (JavaScript Object Notation) は、欧州コンピュータ協会によって確立された JavaScript 仕様 (ECMAScript と呼ばれる) に準拠した軽量のデータ交換形式です。

JSON は人にとって読み書きが容易で、機械にとっても解析と生成が容易であり、ネットワーク情報の伝達効率を効果的に向上させることができるため、標準言語としてよく使用されています。ネットワークとクライアントなどのプログラムの間で情報を送信し、サーバーとの情報のやり取りは JSON 形式で送信されます。

簡単に言えば、JSON は JavaScript オブジェクトで表されるデータのセットを文字列形式に変換し、ネットワーク上およびプログラム間でのこの文字列の送信を容易にすることができます。また、必要に応じて、プログラミング言語がサポートするデータ形式に変換することもできます。このセクションでは主に、JSON データ型と Python データ型間の変換を実装する方法を紹介します。

Python 言語には、JOSN データの処理に特化した組み込みモジュール、jons モジュールがあり、このモジュールを通じて、JSON と Python データ形式間の変換を完了できます。

jons.loads()

このメソッドは、json 形式の文字列を、最も一般的に使用される Python オブジェクト (リスト、辞書、タプル、整数、浮動小数点型など) に変換できます。辞書型に変換されます。例は以下のとおりです。

# coding:utf8
import json
#JOSN字符串
website_info='{"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"}'
py_dict=json.loads(website_info)
print("python字典数据格式:%s;数据类型:%s"% (py_dict,type(py_dict)))

出力結果:

python 辞書データ形式: {'name': 'CSDN', 'PV': '20 million', 'UV ': ' 8 million', 'create_time': '1999'}; データ型: 7f7a529d7c829355be039cf711e6e765

注: 上記の例の JSON 文字列は、 Python 辞書. ただし本質は異なり、JOSN は文字列型ですが、Python 辞書は dict 型です。

json.dump()

Python オブジェクト (辞書、リストなど) を json 文字列に変換し、変換されたデータを json 形式のファイルに書き込むことができるため、このメソッドはファイルストリームオブジェクト。たとえば、クローラ プログラムを使用してデータ キャプチャを完了した後、データを json 形式で保存する必要がある場合があります。この場合、json.dump() メソッドが使用されます。構文形式は次のとおりです。

パラメータの説明は次のとおりです:

  • object: 辞書、リストなどの Python データ オブジェクト。

  • f:ファイル ストリーム オブジェクト、つまりファイル ハンドル。

  • インデント: JSON 文字列を読みやすくするために、保存されたデータをフォーマットします。

  • ensure_ascii: ASCII エンコードを使用するかどうか。データに中国語が含まれる場合は、False に設定する必要があります。

例 例は次のとおりです。

json.dump(object,f,inden=0,ensure_ascii=False)

web.json ファイルを開くと、その内容は次のとおりです。

import json
ditc_info={"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"}
with open("web.josn","a") as f:
    json.dump(ditc_info,f,ensure_ascii=False)

以下に示すように、Python リストを JSON 文字列に変換し、json ファイルに保存します。

{
"name": "CSDN",
"PV": "2000万",
"UV": "800万",
"create_time": "1999年"
}

info_web.json ファイルを開きます。その内容は次のとおりです。

["CSDN" , "www.CSDN .net"]

json.load()

このメソッドはファイル ストリーム オブジェクトを操作するために使用されますが、dump() の逆です。これは、json ファイルから JSON 文字列を読み取り、読み取った内容を Python オブジェクトに変換することを意味します。使用例は次のとおりです。

import json
item_list = []
item = {'website': 'CSDN', 'url': "www.CSDN.net"}
for k,v in item.items():
    item_list.append(v)
with open('info_web.json', 'a') as f:
    json.dump(item_list, f, ensure_ascii=False)

出力結果は次のとおりです。

{'name': 'CSDN', 'url': 'www.CSDN.net'}

json.dumps()

このメソッドは、Python オブジェクトを JSON 文字列に変換できます。例は次のとおりです。

import json
site = {'name':'CSDN',"url":"www.CSDN.net"}
filename = 'website.json'
with open (filename,'w') as f:
    json.dump(site,f,ensure_ascii=False)
with open (filename,'r') as f:
    print(json.load(f))

出力結果は次のとおりです。

変換後のデータ型は次のとおりです。 3a628129c34d878453c4dde2ff442b59

{"website ": "CSDN", "url": "www.CSDN.net"}

最後に、次の表に示すように、上記の方法を簡単にまとめます。

JSON メソッドの概要

メソッド関数json.dumps() Python オブジェクトを JSON 文字列に変換します。 json.loads()JSON 文字列を Python オブジェクトに変換します。 json.dump()Python のオブジェクトを JSON 文字列に変換し、ファイルに保存します。 json.load()ファイル内の JSON 文字列を Python オブジェクトに変換して抽出します。
要約すると、 json.load() と json.dump() はファイル ストリーム オブジェクトを操作し、json ファイルの読み取りと書き込み操作を実現しますが、 json.loads ( ) および json.dumps() は、Python オブジェクトまたは JOSN 文字列を操作します。

以上がPython jsonモジュールの一般的なメソッドは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。