パソコン仕事5倍塾
35,000人を指導した東大卒・元日本IBM社内講師が直伝
MENU
イトケンさんの投稿
(投稿ID: 5636)
AIユーザさんのコメント
(コメントID: 8654)
小川 慶一さんのコメント
(コメントID: 8657)
Captcha:
たった1ヶ月で人生が劇的に変わりました
佐藤信さん
役員クラスの方から高い評価を受けるようになりました。
佐賀県 - 岩本徹さん
今までまったく知らなかったショートカットキーを使いまくっています。
東京都 - 鷹觜慶さん
年齢60才間近、営業で外回りの時間が多い私でも退社時間が1-2時間程度早くなりました。
東京都 - 宗内隆明さん
受講前もすでにパソコン得意でしたが、そんな私でも受講して本当に良かったと思えた講座です。
東京都 - 佐伯とも子さん
ここまで包括的に仕事に役立つ深い学びを受けれた講座は初めてでした
東京都 - 飯田倫子さん
2025年06月02日 06:28
2025年06月01日 18:17
2025年05月23日 13:22
2025年05月07日 08:26
2025年05月07日 08:13
2025年06月02日 21:49
2025年06月02日 21:40
2025年06月02日 21:28
2022年02月24日 10:59
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
2022年02月02日 00:00
2022年02月02日 03:00
2022年02月02日 06:00
2022年02月02日 09:00
2022年02月02日 12:00
2025年04月15日 11:30
2025年04月08日 16:30
2025年04月07日 16:30
2025年04月04日 15:45
2025年03月27日 13:30
2025年06月02日 22:50
2025年05月14日 11:55
2025年02月04日 08:51
2025年02月03日 12:58
2024年11月27日 11:48
2025年03月26日 22:33
2025年03月26日 22:12
2025年03月24日 22:28
2025年03月19日 20:10
2025年03月18日 20:52
2025年04月16日 08:30
2025年03月18日 09:07
2025年03月18日 09:06
2025年03月15日 13:23
2025年02月26日 16:37
2025年04月02日 21:01
2025年04月02日 20:47
2025年04月02日 20:37
2025年04月01日 22:03
2025年04月01日 21:27
2025年04月16日 08:32
2025年03月18日 09:10
2025年03月18日 09:09
イトケンさんの投稿
(投稿ID: 5636)
json_str = '{"a": 1, "b": false, "c": null}'
python_dict = json.loads(json_str)
print(type(python_dict), python_dict)
結果
<class 'dict'> {'a': 1, 'b': False, 'c': None} ←CがNoneになった
疑問
ここで、"c": nullを渡したのに、 'c': Noneで出力されるのはなぜ?
GEMINI回答
"c": null を渡して 'c': None が出力されるのは、json.loads() がJSONの null をPythonで等価な None オブジェクトに正しく変換 した結果であり、問題ではありません。JSONとPythonの間で、意味的に同じ「値がない」状態を表現するための適切な変換が
行われています。
AIユーザさんのコメント
(コメントID: 8654)
JSONの`null`がPythonの`None`に変換される理由についての理解を深めるために、JSONとPythonのデータ型の対応関係を説明します。
JSONとPythonは異なるプログラミング言語であり、それぞれの言語でデータ型が異なるため、データを相互に変換する際に対応する型が必要です。具体的には、以下のような対応が行われます:
- JSONの`null`はPythonの`None`に変換されます。
- JSONの`true`はPythonの`True`に変換されます。
- JSONの`false`はPythonの`False`に変換されます。
- JSONの数値はPythonの数値型に変換されます。
- JSONの文字列はPythonの文字列型に変換されます。
- JSONのオブジェクト(キーと値のペア)はPythonの辞書に変換されます。
- JSONの配列はPythonのリストに変換されます。
したがって、`json.loads()`関数を使用してJSON文字列をPythonの辞書に変換すると、JSONの`null`は自動的にPythonの`None`に変換されます。これは、データの意味を保ちながら、Pythonで使用可能な形にするための標準的な動作です。問題ではなく、正しい変換が行われていると理解していただければと思います。
小川 慶一さんのコメント
(コメントID: 8657)
AIのこの説明は誤りです。(JSONはデータであってプログラミング言語ではない)
改めて説明すると、「JSONはPythonの辞書ではない」というのが比較対象を揃えた適切な表現です。
CSVとエクセルシート(エクセルファイル内のひとつのシート)が別物なのと同様です。
CSVと同様、JSONは様々なシステム間でデータのやりとりをできるようにするための書式で書かれたデータで、その正体はテキストファイルです。
JSONでは、PythonのNoneに相当するものをnullと表示します。
>- JSONの`null`はPythonの`None`に変換されます。
>- JSONの`true`はPythonの`True`に変換されます。
>- JSONの`false`はPythonの`False`に変換されます。
>- JSONの数値はPythonの数値型に変換されます。
>- JSONの文字列はPythonの文字列型に変換されます。
>- JSONのオブジェクト(キーと値のペア)はPythonの辞書に変換されます。
>- JSONの配列はPythonのリストに変換されます。
「変換されます」というより、「対応します」という言い方のほうがいいかな。
- JSONの`null`はPythonの`None`に対応します。
- JSONの`true`はPythonの`True`に対応します。
- JSONの`false`はPythonの`False`に対応します。
- JSONの数値はPythonの数値型に対応します。
- JSONの文字列はPythonの文字列型に対応します。
- JSONのオブジェクト(キーと値のペア)はPythonの辞書に対応します。
- JSONの配列はPythonのリストに対応します。
「JSONをPythonの辞書に変換する」、「Python辞書をJSONに変換する」等の検索キーワードで調べてみたりAIに聞いてみたりしてください。