プログラミング

PythonでJSONファイルを出力する

こんにちは ゆゆう(@yuyuublog) です。

PythonでJSON形式のファイルを出力する機会がありました。

その際のコードを共有します。

実装コード

import json

# 辞書(dict)を生成
data = dict()
# name というキーに yuyuu を格納
data['name'] = 'yuyuu'
# blog というキーに url、title、posts 格納
data['blog'] = [
    {
        'url': 'https://yuyuublog.com/',
        'title': "ゆゆうブログ",
        'posts': [
            "https://yuyuublog.com/pythonyaml/",
            "https://yuyuublog.com/seleniumscroll/",
            "https://yuyuublog.com/transmit/",
        ]
    }
]

# JSONファイルへ出力
with open('blogData.json', mode='w', encoding='utf-8') as file:
    json.dump(data, file, ensure_ascii=False, indent=4)

説明

data = dict() で辞書(dict)を生成しています。

dictはPHPでいうところの連想配列です。キーに紐づく形で値を格納できます。

data[‘name’] = ‘yuyuu’ でname というキーに yuyuu とう値を格納しています。

以下では、blog というキーに url、title、posts 格納しています。

data['blog'] = [
    {
        'url': 'https://yuyuublog.com/',
        'title': "ゆゆうブログ",
        'posts': [
            "https://yuyuublog.com/pythonyaml/",
            "https://yuyuublog.com/seleniumscroll/",
            "https://yuyuublog.com/transmit/",
        ]
    }
]

JSONファイルの出力ですが、まずwith open(‘blogData.json’, mode=’w’, encoding=’utf-8′) as file: でblogData.jsonというファイルを書き込みモードで開いています。

同名ファイルが存在しない場合は新規作成し、同名ファイルがある場合は上書き保存します。

modeの種類は以下のとおりです。

モード意味
w書き込み
r読み込み
x書き込み。指定したファイルが既に存在している場合は例外が発生
a追記
bバイナリモード
tテキストモード
+更新用に開く(例: 「’r+’」「’a+’」で読み書き両用にオープン可能)

そして、json.dump(data, file, ensure_ascii=False, indent=4) でdataの内容をblogData.jsonに出力しています。

まとめ

以上で、PythonでJSONファイルを出力することができます。

ありがとうございました。

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA