Je travaille sur une série d'outils de ligne de commande qui se connectent au même serveur et font des choses différentes mais liées. J'aimerais que les utilisateurs puissent avoir un seul fichier de configuration où ils peuvent placer des arguments communs tels que des informations de connexion qui peuvent être partagées entre tous les outils. Idéalement, je voudrais quelque chose qui ne la suit pour moi:Traitement (éventuellement) des arguments facultatifs en Python
- Si l'adresse du serveur est spécifié à la ligne de commande, utilisez ceci et ignorer toutes les autres valeurs
- Si l'adresse du serveur n'est pas spécifié à la commande line mais est dans un fichier de configuration spécifié sur la ligne de commande, utilisez cette adresse. Ignorer toutes les autres valeurs
- Si l'adresse du serveur n'est pas spécifiée sur la ligne de commande ou un fichier de configuration spécifié à la commande, mais est disponible dans un fichier de configuration dans le répertoire de base de l'utilisateur (par exemple .myapprc), utilisez cette valeur.
- Si l'adresse du serveur n'est pas spécifiée dans l'un des mécanismes ci-dessus, quitter avec un message d'erreur.
Le plus proche que je l'ai vu à c'est le module configparse, qui, de ce que je peux dire offre un analyseur d'option qui examinera également les fichiers de configuration, mais ne semble pas avoir la notion de « Doit être spécifié quelque part "dont j'ai besoin.
Est-ce que quelqu'un connaît un module existant qui peut couvrir mon cas d'utilisation ci-dessus? Sinon, une simple extension à optparse, configparse ou à un autre module que je n'ai pas examiné serait également grandement appréciée.
Quel type de fichier de configuration voulez-vous utiliser?Deux formats populaires sont les fichiers avec des extensions XML et INI. –