J'ai ce qu'est un dictionnaire Python de ~ 1000 entrées. Un script va être appelé à plusieurs reprises qui voudra analyser une chaîne et voir si des clés de la chaîne correspondent. Si c'est le cas, il faudra une action basée sur la clé et la valeur.Quel est le moyen le plus efficace pour charger un dictionnaire en Python?
Lequel de ces éléments est le plus rapide?
1) Stockez le dictionnaire dans une base de données MySQL, puis lisez la base de données à chaque appel du script.
2) Stockez le dictionnaire dans un script Python et importez-le à chaque fois. (par exemple créer un fichier qui ne contient que l'initialisation du dictionnaire)
3) Stockez le dictionnaire dans un fichier texte et importez-le à chaque fois. (soit un fichier de texte plat ou un fichier de données sérialisé pickle, en utilisant cpickle)
Vous cherchez simplement une meilleure pratique ici.
Un dictionnaire d'entrée 1000 est pas grand. Si vous vous inquiétez du "temps de chargement", pourquoi ne pas simplement mettre votre dictionnaire dans un module python et l'importer une fois au début de votre application? Il sera compilé dans un fichier PYC et sera gentil et rapide après la première fois que vous l'exécutez, non? –
Comme le dit K., votre dictionnaire est minuscule, donc vous devriez probablement le charger en mémoire dans un pyc. Cependant, pour les grands dictionnaires réels, vous devez utiliser une base de données comme BDB ou MetaKit, et non une base de données relationnelle. –