Bonsoir,
Je vous explique mon problème j'ai un fichier txt de cette forme :
En utilisant configparser j'arrive bien a récupérer les valeurs des mes clés[ABOUT]
DATE = 19/11/2013
[CONFIG]
DUT_GCS_IP = 172.16.0.90
DUT_GCS_PORT = 2001
OSCILLO_IP = 172.16.0.91
OSCILLO_PORT = 5025
[TEST1]
NOM_TEST = TEST7
NO_TEST = 1
CONFIG_DUT=cfg7
VERIF_MATLAB = analyse_synchro1
#----------------------------------------------
NOM_TEST = TEST11
NO_TEST = 2
CONFIG_DUT=cfg11
VERIF_MATLAB = analyse2
#----------------------------------------------
NOM_TEST = TEST7
NO_TEST = 3
CONFIG_DUT=cfg7
VERIF_MATLAB = analyse_synchro1
Le problème est le suivant, je souhaiterais pouvoir faire une fonction permettant d'automatiser la lecture des 4 derniers paramètres du test car ce sont les seuls qui varient les autres sont globale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 import ConfigParser config = ConfigParser.ConfigParser() config.read('F:\\TESTS\\listeTests.cfg') NOM_TEST = config.get('TEST', 'NOM_TEST') CONFIG_DUT = config.get('TEST', 'CONFIG_DUT') NO_TEST = config.get('TEST', 'NO_TEST') VERIF_MATLAB = config.get('TEST', 'VERIF_MATLAB')
Seulement je ne souhaite pas modifier les noms des clés ni ajouter d'indice devant (car si on souhaite rajouter des tests au milieu il faudra décaler tous les chiffres :/)
J'ai bien évidemment penser a faire une section différente par test mais c'est le même problème en cas de rajout de test au milieu ...
J'aimerais savoir si il est possible de récuperer le contenu du cfg dans une liste qui serait NOM_TEST par exemple et qui serait de cette forme : ['TEST7', 'TEST11', 'TEST7']
Bien sur la longeur de la liste peut varier
Actuellement je ne peux recuperer que la dernière valeur en faisant
Je doute que ce soit possible mais j'aimerais être sur avant de passer a une solution de lecture ligne par ligne qui sera bien plus gavante ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 NOM_TEST = config.get('TEST', 'NOM_TEST') #j'obtiens TEST7 CONFIG_DUT = config.get('TEST', 'CONFIG_DUT') #j'obtiens cfg7 NO_TEST = config.get('TEST', 'NO_TEST') #j'obtiens 3 VERIF_MATLAB = config.get('TEST', 'VERIF_MATLAB')#j'obtiens analyse synchro_1
Le module configparser m'allait bien jusque la
Bien evidemment si vous voyez une autre solution que récupérer les clés portant le meme nom dans une liste je suis preneur aussi.
Merci
Partager