2012-08-14 30 views
2

定義對象的值的列表什麼是定義一個配置文件,並使用ConfigParser限定一堆對象的解析它的最佳方式的初始值(又名:構造值)在ConfigParser

實施例:

[Person-Objects] 
Name: X 
Age: 12 
Profession: Student 
Address: 555 Tortoise Drive 

Name: Y 
Age: 29 
Profession: Programmer 
Address: The moon 

然後能夠解析它在Python這樣我就可以有這樣的事情:

People = [] 
for person in config: 
    People.append(person) 
Person1 = People[0] 
print Person1.Profession  # Prints Student 

回答

2

你可以這樣做:

[person:X] 
Age: 12 
Profession: Student 
Address: 555 Tortoise Drive 

[person:Y] 
Age: 29 
Profession: Programmer 
Address: The moon 

然後在你的代碼:

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

for s in config.sections(): 
    if not s.startswith('person:'): 
     continue 

    name = s[7:] 
    person = dict(config.items(s)) 
    person['name'] = name 

    people.append(person)