Python入門から応用までの学習サイト


JSON

Pythonでは標準ライブラリでJSON(JavaScript Object Notation)APIの利用が可能です。

下記例ではディクショナリオブジェクトをJSONでエンコードしています。

# -*- coding: utf-8 -*- 

import json

json_data = {'Python':'python-izm.com',
             'SearchEngine':('google.co.jp', 'yahoo.co.jp')}

print type(json_data)

encode_json_data = json.dumps(json_data)

print encode_json_data
print type(encode_json_data)

--実行結果--

<type 'dict'> 
{"Python": "python-izm.com", "SearchEngin": ["google.co.jp", "yahoo.co.jp"]}
<type 'str'> 

「dumps」を利用してエンコードを行う前はディクショナリですが、エンコード後はJSON文字列へ変換されています。


「dumps」へ「indent」を設定すると、指定した数値でインデント表示を行います。

# -*- coding: utf-8 -*- 

import json

json_data = {'Python':'python-izm.com',
             'SearchEngin':('google.co.jp', 'yahoo.co.jp')}

encode_json_data = json.dumps(json_data, indent=4)

print encode_json_data

--実行結果--

{
    "Python": "python-izm.com",
    "SearchEngin": [
        "google.co.jp",
        "yahoo.co.jp"
    ]
}


エンコードされたJSONデータを「loads」でデコードします。

# -*- coding: utf-8 -*- 

import json

json_data = {'Python':'python-izm.com',
             'SearchEngin':('google.co.jp', 'yahoo.co.jp')}

encode_json_data = json.dumps(json_data)
print type(encode_json_data)

decode_json_data = json.loads(encode_json_data)
print decode_json_data
print type(decode_json_data)

--実行結果--

<type 'str'> 
{u'Python': u'python-izm.com', u'SearchEngin': [u'google.co.jp', u'yahoo.co.jp']}
<type 'dict'> 

JSON文字列からディクショナリへ変換が行われます。



Python
スタートブック


入門 Python 3


Effective
Python


退屈なことは
Pythonにやらせよう

 
 
 

単純明快にデータを取得!



確かな力が身につく
Python「超」入門




P  R