Utiliser un fichier json pour stocker des presets
Résolu
Leer0r
Messages postés
41
Date d'inscription
Statut
Membre
Dernière intervention
-
trifou -
trifou -
Bonjour,
Je travaille sur un petit projet et j'aimerai rajouter un peu de couleurs pour rendre ça plus agréable. J'ai trouvé la librairie (sty) et j'ai pu ajouter les couleurs que je voulais dans mon programme. Mais maintenant j'aimerai faire des presets, comme ça l'utilisateur pourra modifier les couleurs de l'interface à sa guise et ça sera sauvegarder dans un fichier json.
Le problèlme étant que le package sty utilise des commandes (fg.red pour mettre du texte en rouge par exemple) pour les couleurs... comment faire pour stocker ça dans un fichier json (ou autre) ?
Exemple :
Et j'aimerai que les valeurs soient transformée en commande.
Merci d'avance
Je travaille sur un petit projet et j'aimerai rajouter un peu de couleurs pour rendre ça plus agréable. J'ai trouvé la librairie (sty) et j'ai pu ajouter les couleurs que je voulais dans mon programme. Mais maintenant j'aimerai faire des presets, comme ça l'utilisateur pourra modifier les couleurs de l'interface à sa guise et ça sera sauvegarder dans un fichier json.
Le problèlme étant que le package sty utilise des commandes (fg.red pour mettre du texte en rouge par exemple) pour les couleurs... comment faire pour stocker ça dans un fichier json (ou autre) ?
Exemple :
{
"Help_Crochet": {
"couleur_help_crochet": "fg.orange",
"bg_help_crochet": "",
"end_couleur_help_crochet": "fg.rs",
"end_bg_help_crochet": ""
},
"Help": {
"couleur_help": "fg.da_green"
}
}
Et j'aimerai que les valeurs soient transformée en commande.
Merci d'avance
A voir également:
- Utiliser un fichier json pour stocker des presets
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
1 réponse
Bonsoir,
En imaginant que fg est connu et est une instance d'une classe, alors cette variable devrait être dans
Pour obtenir un attribut d'une classe sous forme de string, il y a la fonction getattr.
Cela reviendrait alors à faire
Mais si toutes les valeurs de ton json sont des attributs de fg, alors autant ne mettre seulement que l'attribut dans le json ("orange" et plus "fg.orange")
Ainsi, plus besoin de passer par globals, puisqu'on ferait directement
En imaginant que fg est connu et est une instance d'une classe, alors cette variable devrait être dans
globals.
Pour obtenir un attribut d'une classe sous forme de string, il y a la fonction getattr.
Cela reviendrait alors à faire
class Fg: orange = "#ffa500" fg = Fg() s = "fg.orange" name, attr = s.split('.') print(getattr(globals()[name], attr))
Mais si toutes les valeurs de ton json sont des attributs de fg, alors autant ne mettre seulement que l'attribut dans le json ("orange" et plus "fg.orange")
Ainsi, plus besoin de passer par globals, puisqu'on ferait directement
getattr(fg, attr).