php.iniのような設定ファイルの値を辞書に格納するクラスをつくりました
おひさしぶりです。Aliceです。
研究発表会が今週の土曜にあってごたごたしてました。
さて、いままで自分はpythonのクラスは苦手意識があってなかなか手が出ませんでした。ですが、一昨日頑張って挑戦してみたところ、普通に理解できました。なんというか、”食わず嫌い”というようなものでした。
なのでさっそく便利なものを書いてみようとおもって作ったのがこのクラスです。
インデントの関係上、文字サイズを小さくしました。
もっと大きな字でみたいかたはこちらへおねがいします。
クラスについてもろもろ
このクラスを作った目的は、php.iniのようなコメントがものすごく多くて、なかなかいっぺんにデータをみにくいような設定ファイルをどうにかしようというもので、ずいぶん前から考えていたものでした。そこで、このクラスでは、ファイルの中にある「=」イコールの文字を取得し、「イコールの前の文字:イコールの後の文字」という形で辞書を作ります。
問題のコメントも、ちゃんとcommentsというリストに格納されて、いつでも見ることが出来ます。
応用
このクラスを使えば、設定ファイルだけではなく、MySQLのようなデーターベースに接続するときのユーザー名やパスワードなども、=でつないでリストに格納していれば、という風に辞書に変換してくれます。
>>> a = ["User=alice","passwd=alicehimmel","host=localhost"]
>>> d = toDict(a)
>>> d.dict
{"User":"alice","passwd":"alicehimmel","host":"localhost"}
この場合、commentsは空になります。
自分は結構便利だと思うのですが、いかがでしょうか。
質問等ある場合はtwitterやコメント等でお願いします。
ダウンロード
ダウンロードはこちらからお願いします。▼http://www1.axfc.net/uploader/Sc/so/184058
パスワードは「pythonlove」です。
今回は、sample.pyというサンプルも収録しています。
参考にしてください。
以上、Aliceでした!