IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Quelle solution choisir?

Votants
3. Vous ne pouvez pas participer à ce sondage.
  • La première citée

    1 33,33%
  • La deuxième citée

    0 0%
  • La troisième citée, mais alors je dis comment

    2 66,67%
Sondage à choix multiple
Python Discussion :

Comment feriez-vous un fichier de configuration?


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 64
    Par défaut Comment feriez-vous un fichier de configuration?
    Bonjour,
    Comme beaucoup d'entre vous je suppose, j'ai une classe principale A et de nombreuses classes secondaires [B1 ... Bn] dans des fichiers séparés. Je souhaite maintenant définir un fichier de configuration modifiable par l'utilisateur contenant par exemple les valeurs par défaut ou le chemin vers un programme externe. Comment faire pour faire bien? J'ai pensé à
    1- Lire le fichier et extraire les variables utiles dans chacune des classes Bi (me semble lourd)
    2- Lire le fichier dans la classe principale A, puis mettre le tout dans une liste et importer la liste dans chacune des classes Bi (me semble rigide et dangereux si le codage du fichier de départ doit être modifié)

    Dans l'idéal, il faudrait que la lecture du fichier définisse des variables globales, c'est-à-dire définies une fois dans la classe principale A et qui peuvent être utilisées sans définition ni transfert en argument dans les classes Bi. Mais celà est-il possible?

    J'attends votre opinion. Merci.

  2. #2
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Peut être comme dans Django, un fichier settings.py contenant tes variables, exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    LANG = 'fr'
    RESOLUTION = (1024, 768)
    # c'est n'importe quoi
    COLOR  = "#f00"
    #oui
    #je sais...
    et dans tes autres fichiers:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import settings
     
    lang = settings.LANG

  3. #3
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 64
    Par défaut
    Oui c'est une idée, merci. Je pourrais même grouper dans settings toutes les valeurs dont j'ai besoin dans une classe Bi en une liste.

    Une ligne de code en plus par classe, c'est acceptable!

  4. #4
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Si tu utilises un module python comme fichier de configuration et qu'il est destiné à être modifié directement par l'utilisateur, il te sera nécessaire de tester l'import:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    try:
        import settings
    except SyntaxError:
        recreer_le_fichier_de_conf()
    except ImportError:
        ....
    Surtout si tu attends de l'utilisateur qu'il respecte la bonne syntaxe pour les listes...

  5. #5
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 64
    Par défaut
    Merci pour ces précisions. Le fichier de config sera effectivement écrit en lisant des données entrées dans des Entries tkinter par l'utilisateur. Faire en sorte que les données qu'ils y entrent soient correctes reste toujours long à gérer pour le programmateur...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 328
    Par défaut
    Bonjour,

    Et un fichier SHELVE ?

Discussions similaires

  1. Comment feriez-vous un éditeur texte avec metadonnées
    Par slanbuas dans le forum Général Java
    Réponses: 1
    Dernier message: 07/07/2008, 00h25
  2. Comment feriez-vous? conception d' une base de données.
    Par Patrick25300 dans le forum Schéma
    Réponses: 4
    Dernier message: 05/05/2008, 18h41
  3. [SQL] Comment feriez-vous cette requête pour une recherche ?
    Par Core8 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/02/2008, 11h58
  4. [D7] Comment feriez-vous une messagerie instantanée façon MSN ?
    Par ero-sennin dans le forum Web & réseau
    Réponses: 37
    Dernier message: 09/08/2007, 20h53
  5. [Debug] Comment feriez-vous ?
    Par mandaillou dans le forum C++
    Réponses: 4
    Dernier message: 21/03/2007, 17h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo