############################################################## json モジュール (1) 概要 ############################################################## ========================================================= json 形式とは ========================================================= * JSON(JavaScript Object Notation)は、データのやり取りや保存に広く使用されるデータ形式 * :blue:`軽量、かつ、可読性が高い.` * 構成は、"キー"と"値"のペアからなるオブジェクト、とリスト * 階層構造が可. * Web や多くの言語で使用可能(parserが用意されていることが多い) ========================================================= json の記法 ========================================================= .. literalinclude:: cnf/sample.json * {...} 内に記載 * "キー" : "値", が基本構成 * リストは [...]、辞書は {...} * 論理とNoneは、 :red:`true, false, null` * キー、値(文字列)は、ダブルクォーテーションで囲まなくても問題なし + 一方で、 "."をキーに含める場合はエラーがでる. + 回避にはダブルクォーテーションが必要. | --------------------------------------------------------- 末尾のカンマ問題(ケツカンマ問題): --------------------------------------------------------- * json形式 :最終行を除いて必ずつける.最終行はつけてはならない. * json5形式:各行全てにつけてかまわない( :red:`ケツカンマフリー` ) | --------------------------------------------------------- コメント問題: --------------------------------------------------------- * json形式 :コメントは書けない.無理やり書くなら "comment":"This is a comment." など. * json5形式: C-like コメント :red:`"//"` または、 :red:`"/\* ... \*/"` | ========================================================= python parser ========================================================= --------------------------------------------------------- import ( json / json5 ) --------------------------------------------------------- :: import json or import json5 * 上記の通り、 :blue:`json5が、多機能なので、json5でよい` * json5は標準モジュールでないので、 :red:`pip install` する必要あり. | --------------------------------------------------------- シンプルなjson5 parser コマンド --------------------------------------------------------- .. literalinclude:: pyt/json__simpleParser.py :language: python | .. literalinclude:: out/stdout1.out |