[résolu] Erreur configparser


#1

Bonjour,

Je reçoit un beau message d’erreur en reprenant un de mes programmes;

Traceback (most recent call last):
File “/usr/lib/python3.5/configparser.py”, line 1135, in _unify_values
sectiondict = self._sections[section]
KeyError: ‘[jour_impair]’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “solocalise.py”, line 99, in
params=read_conf()
File “solocalise.py”, line 96, in read_conf
param[“lever_gmt”] =config.get(j_cfg, ‘lever_gmt’)
File “/usr/lib/python3.5/configparser.py”, line 778, in get
d = self._unify_values(section, vars)
File “/usr/lib/python3.5/configparser.py”, line 1138, in _unify_values
raise NoSectionError(section)
configparser.NoSectionError: No section: ‘[jour_impair]’

rien que ça.
mon fichier comporte bien une section [jour_impair]

voici les lignes du programme qui semblent déranger;

# chargement du fichier de configiguration
if os.path.isfile(cfg_nom):
    # si le fichier cfg_nom existe
    cfg_file=1
    # à modifier mettre le chemain relatif
    # Définition de la Fonction "read_conf()"
    def read_conf ():
        """ Chargement du fichier de configuration """
        conf= cfg_nom
        param = {}
        config = configparser.ConfigParser()
        config.read(conf)
        param["tpo"]        = config.get('reglages_programmes', 'tpo')
        param["latitude"]   = config.get('cst_locale', 'latitude')
        param["longitude"]  = config.get('cst_locale', 'longitude')
        #param["j_annee_cfg"]=config.get(j_cfg, 'j_annee')
        param["lever_gmt"]  =config.get(j_cfg, 'lever_gmt')
        param["coucher_gmt"]=config.get(j_cfg, 'coucher_gmt')
        return param
    params=read_conf()
    tpo       = params["tpo"]
    latitude  = params["latitude"]
    longitude  =params["longitude"]
    #j_annee_cfg=params["j_annee_cfg"]
    lever_gmt  =params["lever_gmt"]
    coucher_gmt=params["coucher_gmt"]

#2

Peut-être retirer les crochets de ‘[jour_impair]’ dans la variable j_cfg


#3

Effectivement, c’est beaucoup mieux! :grinning: