Pythonで互換性を考えてJSONを扱うには

はじめまして。morimotoです。

「パイソン」と初めて聞いた時はストリートファイターの四天王の名前かと思ったのですが、彼の名は「バイソン」でした。バイソンさんうる覚えでごめんなさい。

今日はPythonのバージョンを気にせずにJSONを扱う方法を書きたいと思います。

JSONとは軽量のデータ交換フォーマットです。(詳しくは⇒こちら

Python2.6からJSONモジュールが標準サポートになりました。

「PythonでJSONを扱っていて現在の環境のPythonが2.6以前だが、2.6以降にアップグレードするかもしれない。」
という状況の場合、下記の条件を満たせば何も悩まずに開発を進めることができます。

  • Python2.6以降の場合は、標準サポートのjsonを使う
  • Python2.6以前の場合は、元々のライブラリsimplejsonを使う

Python2.6以前の場合はsimplejsonをインストールする必要がありますので、バージョンおよび環境に応じたsimplejsonをインストールしてください。

jsonを扱いたいファイルの冒頭に以下のコードを追加します。

import sys
if sys.version_info[:2] >= (2, 6): # If using Python 2.6 or later
    import json
else:
    # % easy_install simplejson
    import simplejson as json

これで json.dumps() や json.loads() をバージョンに関係なく使うことができるようになります。

それでは、良い「PythonでJSONライフ」を。

Comments are closed.