JSON-python

【jsonモジュール】Pythonで「JSON文字列」を出力する方法 【dumps】

はじめに

Python組み込みの「json」モジュールを使って、辞書型のデータから、「JSON文字列「インデントなどで整形したJSON文字列」を出力する方法を解説します。

Python組み込みなのでインストール不要。使い方も簡単なので、サクッとJSONを扱いたい方はぜひご覧ください。

環境

環境 バージョンなど
Python 3.9.6
OS Wiindows10
楽天ブックス
¥1,980 (2022/09/21 10:02時点 | 楽天市場調べ)

~トレンドを知るには雑誌が最適です~

プログラム概要

今回のプログラムの概要は以下の通りです。

  • 辞書を作成する
  • 辞書からJSON文字列を作成する

実行結果

後述の「JSON文字列を出力するコード」の実行結果です。辞書型の変数から、JSON文字列を作成して表示しています。

indentオプションを指定することで、改行やインデント付きのPythonモジュールも作成することができます。

{"Email": "james@example.com", "Active": true, "CreatedDate": "2013-01-20T00:00:00Z", "Roles": ["User", "Admin"]}

{
  "Email": "james@example.com",
  "Active": true,
  "CreatedDate": "2013-01-20T00:00:00Z",
  "Roles": [
    "User",
    "Admin"
  ]
}

全体コード

全体コードは以下の通りです。詳細な内容は後述する「コードのポイント」で解説します。

import json

# 辞書を作成します
dict = { 
            "Email": "james@example.com",
            "Active": True,
            "CreatedDate": "2013-01-20T00:00:00Z",
            "Roles" : ["User", "Admin"]
        }

# 辞書からJSON文字列を作成します
jsonString = json.dumps(dict)

# 改行とインデント付きのJSON文字列を作成します
jsonIndent = json.dumps(dict, indent=2)

# JSON文字列の表示です
print(jsonString)
print(jsonIndent)

コードのポイント

JSON文字列の出力

jsonモジュールのdumps関数を使って、辞書から「JSON文字列」を出力します。

dumps関数はデフォルトで「改行なしの一行のJSON」を出力します。インデントや改行など、人にやさしいJSON文字列を出力する場合は、「indent」にプラスの整数を指定してください。

# 辞書からJSON文字列を作成します
jsonString = json.dumps(dict)

# 改行とインデント付きのJSON文字列を作成します
jsonIndent = json.dumps(dict, indent=2)

※ 「0」を設定すると、改行だけされたJSON文字列が出力されます。

日本語の文字化け

dumps関数では日本語の変換の際に、文字化け(Unicodeエスケープ)み見える変換を行う場合があります。

日本語を使う場合の設定方法は、こちらの記事をご覧ください。

まとめ

Python組み込みの「json」モジュールを使って、辞書型のデータから、JSON文字列を出力する方法を解説しました。参考になればうれしいです。

UdemyでPythonのスキルに差をつける(無料あり)

Pythonのスキルを上げるには、Udemyの動画講座がおすすめです。

1講座 2440円程度で返金保証あり、無料講座も130本近く公開されています。アプリならオフラインで視聴できて、時間や場所にも縛られません。みんながやっていない今始めることで、スキルや評価に差をつけることができます。以下はPythonの無料講座の一覧です。

⇒ Pythonの講座一覧を見る

講座選びに迷ったらコレ

講座選びに迷ったら、以下がおすすめします。落ち着いた話し方とBGMで聴きやすく「ベストセラー」になっている講座です。

⇒ 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル を見る

シリコンバレーの現役エンジニア酒井潤さんの講座です。基礎~応用まで盛りだくさんの講座です。シリコンバレー流の「動くだけでなく、他人も読めるコード」も一緒に学べます。

⇒ 独学で身につけるPython〜基礎編〜 を見る

京都大学・トヨタ自動車の経歴を持つ安井亮平さんの講座です。Pythonでの業務効率化方法がメインですが、Pythonの基礎から学べます。

応援・要望お待ちしてます

ブログを見ていて「この辺を詳しく知りたい」「このライブラリの使い方を知りたい」「こんなことで困ってる」...etc があれば、コメント・問い合わせ・Twitterで教えてください。質問・ご要望に合わせて解説記事を作ります。

ブログを気に入っていただけたり、「応援してもいいよ」という方がいたら、ブログやSNSでの紹介をお願いします。 あたたかい応援は、中の人の更新の大きな励みになります。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。