• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

json5

date: 2024-01-22 excerpt: json5について

tag: json5json


json5について

概要

  • json5はjsonのスーパーセット
  • 以下の機能がjsonに比べて追加されている
    • コメント - //で始まる行コメントと/* */で囲まれたブロックコメント
    • キーの引用符の省略 - キーが識別子の場合は引用符を省略できる
    • 末尾のカンマ - 配列やオブジェクトの末尾にカンマを置ける
    • シングルクォート - 文字列をシングルクォートで囲める

インストール

python

$ pip install json5

動作例

python

import json5

# JSON5形式の文字列
json5_string = '''
{
    // コメント
    /* ブロックコメント */
    name: "John Doe",
    age: 30,
    isStudent: false,
    courses: ["Math", "Science", "Literature",],
    address: {
        street: "123 Main St",
        city: "Anytown",
    },
}
'''
# JSON5文字列をPythonのdictに変換
data = json5.loads(json5_string)
print(data)
"""
{'name': 'John Doe', 'age': 30, 'isStudent': False, 'courses': ['Math', 'Science', 'Literature'], 'address': {'street': '123 Main St', 'city': 'Anytown'}}
"""

data = {
    "name": "Jane Doe",
    "age": 25,
    "isStudent": True,
    "value": -float('inf')
}

# Pythonの辞書をJSON5形式の文字列に変換
json5_string = json5.dumps(data, indent=4)
print(json5_string)
"""
{
    name: "Jane Doe",
    age: 25,
    isStudent: true,
    value: -Infinity,
}
"""

参考

  • json5
  • json5 · PyPI


json5json Share Tweet