【Python】Jsonファイルに書き込む方法 dump()とdumps()

こんにちは、にわこまです。

今回は、pythonからjsonファイルに書き込む方法を紹介します。jsonファイルを書き込む方法は、dump関数とdumps関数の2つがあります。この2つの関数の違いについても紹介します。

 

誤字脱字や分からない点、解決し欲しい問題がありましたらご連絡お願いいたします。

メールまたはTwitterのDMまで!

 

 

スポンサードサーチ


jsonファイルに書き込む方法

dump()またはdumps()を使う

 

dump()またはdumps()を使うことで、pythonからjsonファイルに書き込むことができます。

 

dump()とdumps()の違いは以下の通りです。

dump()」は、辞書をjsonファイルとして保存するときに使用します。

dumps()」は、辞書をjson形式の文字列に変換するときに使用します。

 

 

詳しい使い方を以下で紹介します。

 

 

dump()の使い方

json.dump()は、辞書型のオブジェクトをjsonファイルに保存する関数です。以下にサンプルコードと実行結果としてjsonファイルを示します。

import json

d = {"Crow": {"X":12, "Y":34, "Z":23},
     "Duck": {"X":10, "Y":29, "Z":20},
     "Eagle": {"X":19, "Y":35, "Z":25},
     "Flamingo": {"X":30, "Y":33, "Z":31}}

path = "./json_sample_dump.json"
with open(path, encoding="utf-8", mode="w") as f:
    json.dump(d, f, ensure_ascii=False, indent=2)
{
  "Crow": {
    "X": 12,
    "Y": 34,
    "Z": 23
  },
  "Duck": {
    "X": 10,
    "Y": 29,
    "Z": 20
  },
  "Eagle": {
    "X": 19,
    "Y": 35,
    "Z": 25
  },
  "Flamingo": {
    "X": 30,
    "Y": 33,
    "Z": 31
  }
}

 

dump()の引数について説明します。

「d」は、jsonファイルに保存したいオブジェクトです。

 

「f」は、ファイルオブジェクトです。

 

「ensure_ascii」は、アスキーコードに変換するか否かを設定する引数です。英数字のみのデータであれば、Trueで問題ありません。しかし、データに日本語が含まれるときは、Falseにします。

 

「indent」は字下げのことです。基本的に2を設定しておけば問題ありません。

 

 

dumps()の使い方

json.dumps()は、辞書型のオブジェクトをjson形式の文字列に変換する関数です。以下にサンプルコードとその実行結果を示します。

import json

d = {"Crow": {"X":12, "Y":34, "Z":23},
     "Duck": {"X":10, "Y":29, "Z":20},
     "Eagle": {"X":19, "Y":35, "Z":25},
     "Flamingo": {"X":30, "Y":33, "Z":31}}

s = json.dumps(d, ensure_ascii=False, indent=2)

print(s)

=== 実行結果 ===
{
  "Crow": {
    "X": 12,
    "Y": 34,
    "Z": 23
  },
  "Duck": {
    "X": 10,
    "Y": 29,
    "Z": 20
  },
  "Eagle": {
    "X": 19,
    "Y": 35,
    "Z": 25
  },
  "Flamingo": {
    "X": 30,
    "Y": 33,
    "Z": 31
  }
}

 

json.dumps()の引数について説明します。

「d」は、json形式の文字列に変換したい辞書型のオブジェクトです。

 

「ensure_ascii」は、アスキーコードに変換するか否かを設定する引数です。英数字のみのデータであれば、Trueで問題ありません。しかし、データに日本語が含まれるときは、Falseにします。

 

「indent」は字下げのことです。基本的に2を設定しておけば問題ありません。

 

 

まとめ

まとめの画像

今回は、pythonからjsonファイルに保存する方法を紹介しました。具体的にはdump()とdumps()の使い方と違いについて紹介しました。

 

改めて違いを示します。

「dump()」は、辞書をjsonファイルとして保存するときに使用します。

「dumps()」は、辞書をjson形式の文字列に変換するときに使用します。

 

解決してほしい問題などがありましたらメールまたはTwitterのDMまで!

  

  

最後までお読みいただきありがとうございます。


スポンサードサーチ