基礎・上級問題チェック
問題 27 /40
次のコードを実行した結果として、正しいものはどれか。 import json json = json.dumps({'one': 1, 'two': 2}) print(type(json))
選択 1
str
選択 2
dict
選択 3
json
選択 4
txt
解説
選択肢1が正解です。
dumps()関数は、Pythonの辞書型のデータを、JSONフォーマットにエンコードします。
エンコードといっても、他の言語で読み込めるようにJSONのルールに合わせているだけであり、Pythonでのデータ型は文字列のstrです。
問題文の「{'one': 1, 'two': 2}」をdumps()関数でエンコードすると、「'{"one": 1, "two": 2}'」になります。
JSONはシングルクオーテーションではなくダブルクオーテーションを使うルールのため、波括弧の中の「'」が「"」に変換されます。
また、辞書型を文字列に変換するため、波括弧全体がシングルクオーテーションで囲われます。
なお、似た名前のdump()関数は、JSONフォーマットにエンコードしてファイルとして保存する関数です。
(公式書籍 p.82-83)