2010年11月13日

Python で JSON のモジュールを読み込む方法

json モジュールが標準パッケージに組み込まれたのは 2.6 からなので、simplejson を使ったり django のパッケージを使うように切り替えるひとつの方法です。コンソールから使ったり AppEngine にデプロイするときにコードを共有する場合に便利だと思います。google-api-python-client のソースツリーのコードです。

http://code.google.com/p/google-api-python-client/source/browse/apiclient/json.py
try: # pragma: no cover
  import simplejson
except ImportError: # pragma: no cover
  try:
    # Try to import from django, should work on App Engine
    from django.utils import simplejson
  except ImportError:
    # Should work for Python2.6 and higher.
    import json as simplejson

こんな感じで読み込むことができます。モジュールの API はそのまま使えます。ちょっと便利。

from apiclient.json import simplejson

"#pragma: no cover" を処理してくれるのがどのレイヤーなのかが分からない。。


追記 (2011/01/08): anyjson を使うともっとラッピングできるようです。
コメントを投稿