PythonでINIファイルを

30分プログラム、その253。PythonでINIファイルを読んでみる。
ConfigParserを使えば楽チン。コメントや変数も使えるから、自前で作るよりずっといい。でも、最近はYAMLとかのほうが流行りだろうなぁ。

>>> import ConfigParser
>>> config = ConfigParser.RawConfigParser()
>>> config.read(['config.ini'])
['config.ini']
>>> config.get('global','date-format')
'%Y-%m-%d'

INIファイルを読むだけじゃつまらかなったので、設定ファイル付きのdateコマンドっぽいのを作ってみた。特に理由はない。

使い方

設定ファイル

[global]
date-format=%Y-%m-%d
with-time=true
time-format=%H:%M
$ python config.py
2008-02-24 22:05

ソースコード

#! /usr/bin/python
# -*- mode:python; coding:utf-8 -*-
#
# config.py -
#
# Copyright(C) 2008 by mzp
# Author: MIZUNO Hiroki / mzpppp at gmail dot com
# http://howdyworld.org
#
# Timestamp: 2008/02/24 21:52:45
#
# This program is free software; you can redistribute it and/or
# modify it under MIT Lincence.
#
import sys
import ConfigParser
import time
from pprint import pprint

config = ConfigParser.RawConfigParser() 
config.read(['config.ini'])

d = time.strftime(config.get('global','date-format'),time.localtime())

if config.getboolean('global','with-time'):
    t = ' '+time.strftime(config.get('global','time-format'),time.localtime())
else:
    t = ''

print d+t