::-- limodou [2005-09-14 06:31:19]

1. Dict4Ini

This module is used to process ini format configuration file. It acts just like a dict, but you can also access it's sections and options with attribute syntax, just like x.test.

1.1. Why reinvent this module?

I used Config4Obj module for GoogleTalkBot software (confbot) to deal with configuration file. But I found its lacks on:

Above is only my opinions, so they may be not right.

So I decide to reinvent a new module to solve these lacks, I named it as Dict4Ini, it means you can access the config object just like a dict.

1.2. What's it features

1.3. Where can I download it?

1.4. About license

1.5. What's new?

1.6. Examples

1.6.1. Example 1 Create a ini file

   1     import dict4ini
   2 
   3     x = dict4ini.DictIni('test.ini')
   4     x.common.name = 'limodou'
   5     x.common.bool = 1
   6     x.common.list = [3, 1.2, 'Hello', 'have spaces']
   7     x.save()

This example will save option to test.ini. As you can see, you needn't create section "common" at first, just think it's there, it's ok. The result of test.ini is:

{{{[common] list = 3,1.2,Hello,"have spaces", bool = 1 name = limodou}}}

And you can see, once the value has special chars, just like ' ', ',', '\"', etc, the string will be quoted by double quoter. But "Hello" is a single word, and it has not the special chars, so it won't be quoted. If the value is number, it'll be just like number literal, but if the value is number string, it'll be quoted by double quoter.

In this time, the Dict4Ini support int, float, list/tuple, string, unicode data type, for others you should convert yourself.

1.6.2. Example 2 Open an existed ini file

   1     import dict4ini
   2 
   3     x = dict4ini.DictIni('test.ini')
   4     print x.common.bool
   5     print x.common.list
   6     print x.common.name

So it's easy. The result will be:

Dict4Ini (last edited 2009-12-25 07:13:47 by localhost)