j'ai un file.ini structuré comme ceci:valeur Sortir de ConfigParser au lieu de chaîne
item1 = a,b,c
item2 = x,y,z,e
item3 = w
et mon ConfigParser est fixé comme suit:
def configMy(filename='file.ini', section='top'):
parser = ConfigParser()
parser.read(filename)
mydict = {}
if parser.has_section(section):
params = parser.items(section)
for param in params:
mydict[param[0]] = param[1]
else:
raise Exception('Section {0} not found in the {1} file'.format(section, filename))
return mydict
en ce moment « mondict » est de retour paires clé-valeur de chaînes, à savoir: {'item1': 'a,b,c', 'item2': 'x,y,e,z', 'item3':'w'}
comment puis-je le modifier pour retourner la valeur sous forme de liste? comme ceci: {'item1': [a,b,c], 'item2': [x,y,e,z], 'item3':[w]}
vous pourriez la sous-classe 'ConfigParser' et remplacer la méthode' _read' ainsi que mettre à jour la 'RawParser.OPTCRE' regex (qui est utilisé pour l'analyse des lignes d'option). Mais le moyen le plus simple et le plus fiable est probablement de faire un '.split (',')' dans votre code. – FamousJameous
en ajoutant .split (',') à param [1] travaillé! Si vous voulez répondre à la question, je la marquerai comme acceptée. – Acoustic77