Exécuter un fichier .ini en python [Résolu]

Signaler
-
 a.b -
Bonjour,

Je suis un étudiant en développement et je suis en train de finaliser un projet. Je souhaite exécuter un fichier .ini pour de l'application de filtres d'un dossier d'entrée vers un dossier de sortie. Je recherche sur internet mais en vain.

Je vous montre mon fichier main.py :


# Importation de bibiliothèques dont on aura besoin
import sys
import repertoire
import configparser
from filtre import floue, dilatation, noirblanc

arg = sys.argv
mon_conteneur = configparser.ConfigParser()

if arg[1] == '--filtrer':
    if arg[2] == "-personnalisé":
        if arg[3] == '-i' and arg[5] == '-o':
            repertoire.verif_dossier(arg[6])
            #dilatation.en_dilatation(arg[4], arg[6], int(arg[7]))
            arg[6] = floue.en_floue(arg[4], arg[6], int(arg[7]))
            arg[6] = noirblanc.n_b(arg[4], arg[6])
    else:
        arg_filtre = arg[6]

        if arg[2] == "-i" and arg[4] == "-o":
            repertoire.verif_dossier(arg[5])
            if arg_filtre == "dilatation":
                dilatation.en_dilatation(arg[3], arg[5])
            elif arg_filtre == "noir":
                noirblanc.n_b(arg[3], arg[5])
            elif arg_filtre == "floue":
                floue.en_floue(arg[3], arg[5])
            else:
                print("Vous ne tapez pas l'un des filtrations correctes")
        else:
            print("Vous devez tapez :\n'-i' pour l'élément source\n'-o' pour le dossier de destination ")
elif arg[1] == "--aide":
    print("Pour mener à bien les opérations de filtration d'images, voici quelques règles :")
    print("Il faut taper l'option '-filtrer' pour")
elif arg[1] == "--log":
    fichier = open("filtre.log", "r")
    print(fichier.read())
    fichier.close()
elif arg[1] == "--config-fichier":
    mon_conteneur.read("config.ini")
    print(mon_conteneur.sections())
else:
    print("Erreur, Vous devez taper les bonnes options")



Je vous montre mon fichier config .ini :


[Paramètres]
entrée : data/img
sortie : paris
fichier_log : filtre.log
filtre : dilatation



Une aide est le bienvenue et elle serait précieuse pour mon apprentissage.

Je vous remercie.
Configuration: Macintosh / Chrome 84.0.4147.105

4 réponses

Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021
804
bonjour,
ton programme ne fait pas ce que tu veux?
Non, avec l'option "--config-fichier" je veux exécuter le fichier config.ini avec par exemple lier au fonction de filtres.
Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021
804
et ton programme fait quoi?
>
Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021

Mon programme applique des filtres (dilatation, floue et noir/blanc) à des images. En cli, on met le dossier source et le dossier de destination. Maintenant je veux à partir d'un fichier .ini appliquer les filtres sans faire quoi que ce soit avec l'option "--config-fichier" mais j'essaye de trouver comment exactement faire. Là, dans l'option en question, c'est du test.
Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021
804 > a.b
es-tu étudiant en développement informatique?
je pense qu'il manque une partie de ton programme.
que penses-tu qu'il faut y ajouter?
>
Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021

Je ne comprend pas cette 1ère question. Ce que je trouve sur le net c'est lire et écrire un fichier .ini mais je veux exécuter ce fichier déjà implémentés pour appliquer du filtre à des dossiers d'images. Je ne trouve pas de résultat. Peut-être que je me trompe et que tu peux me corriger s'il y a un manque pour arriver à l'objectif.
Messages postés
14289
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 février 2021
804 > a.b
peut-être pourrais-tu expliquer ce que tu veux réaliser, et dans quel but?
Messages postés
15600
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
23 février 2021
662
Bonsoir

un fichier ini ça ne s'exécute pas.

Peux tu donc décrire avec d'autres mots et des détails ce que tu veux faire?
Messages postés
31458
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 février 2021
3 277
Bonjour


Ce que je trouve sur le net c'est lire et écrire un fichier .ini mais je veux exécuter ce fichier


Un fichier ini... Ça ne s'exécute pas.... Mais il se lit...
Donc il faut que ton programme lise le contenu de ce fichier ini et utilise les valeurs obtenues dans la suite de ton code....

Autrement dit tu dois remplacer les variables que tu as actuellement récupérer en paramètres viata variable arg... Par les valeurs qui se trouvent dans le fichier ini



Bonsoir,
Peut-être que je n'étais pas clair. Mon programme est une application en cli pour appliquer 3 filtres (floue, dilaté et noir et blanc) il fallait que je montre le code cible. Pas tout le programme. Finalement, j'ai réussi à utiliser le fichier .ini pour mon programme. Je n'avais pas fait attention à la fonction get() pour récupérer les données. J'avais mal compris le fonctionnement des fichiers. Ça se lit et s'écrit et non s'exécute. Je suis qu'au début du cursus en développement. Je ne fait qu'apprendre sinon il n'y a aucun intérêt d'être sur les forums.

Je vous remercie