2021年1月4日月曜日

json - python

■インポート

import json

■文字列と辞書型の変換


・文字列を辞書型に変換

str = '{ "a":"あ", "b":"い", "c":"う" }'
print(str)
print(type(str))

dic = json.loads(str)
print(dic)
print(type(dic))

#出力
# { "a":"あ", "b":"い", "c":"う" }
# <class 'str'>
# {'a': 'あ', 'b': 'い', 'c': 'う'}
# <class 'dict'>

・辞書型を文字列に変換

dic = {'a': 'あ', 'b': 'い', 'c': 'う'}
print(dic)
print(type(dic))

str = json.dumps(dic)
print(str)
print(type(str))

#出力
# {'a': 'あ', 'b': 'い', 'c': 'う'}
# <class 'dict''>
# {"a": "\u3042", "b": "\u3044", "c": "\u3046"}
# <class 'str'>
 非ASCII文字(2バイト文字)はunicodeになる
str = json.dumps(dic, ensure_ascii=False)
print(str)
print(type(str))

#出力
# {"a": "あ", "b": "い", "c": "う"}
# <class 'str'>
 「ensure_ascii=False」と指定するとそのまま
 ※keyが文字列ではない場合、変換後は強制的に文字列になる

0 件のコメント:

コメントを投稿