pythonで日付を取り扱う
python-dateutilが使いやすいのでそれを使ってみる。
2.X系はversion1.5以下を使う必要があるので注意。
インストール
pipからバージョン指定してインストールする。
% pip-2.7 install "python-dateutil==1.5" --no-install Downloading/unpacking python-dateutil==1.5 Downloading python-dateutil-1.5.tar.gz (233Kb): 233Kb downloaded Running setup.py egg_info for package python-dateutil Successfully downloaded python-dateutil % pip-2.7 install "python-dateutil==1.5" Downloading/unpacking python-dateutil==1.5 Running setup.py egg_info for package python-dateutil Installing collected packages: python-dateutil Running setup.py install for python-dateutil Successfully installed python-dateutil Cleaning up...
使ってみる
% ipython In [1]: import dateutil # mysql> select now(); #+---------------------+ #| now() | #+---------------------+ #| 2012-12-02 18:49:33 | #+---------------------+ #1 row in set (0.00 sec) # mysqlの結果をパースしてみる。 In [26]: print dateutil.parser.parse('2012-12-02 18:49:33') 2012-12-02 18:49:33
標準で入っているdatetimeモジュールでやるとこんな感じ。
In [30]: import datetime In [36]: print datetime.datetime.strptime('2012-12-02 18:49:33', '%Y-%m-%d %H:%M:%S') 2012-12-02 18:49:33
パースするときは毎回フォーマット調べるところから入るので時間の節約になる。
datetimeutilの一部しか触っていませんがタイムゾーンの変換をうまくあつかう機能があるので その辺もどんどん使っていきたいと思います。