Est-il un moyen rapide de générer un dict de l'alphabet en Python?
Je veux générer un dict avec les lettres de l'alphabet comme les clés, quelque chose comme
letter_count = {'a': 0, 'b': 0, 'c': 0}
ce qui serait un moyen rapide de générer des dict que, plutôt que d'avoir à me taper dans?
Merci pour votre aide.
MODIFIER
Merci à tous pour vos solutions 🙂
nosklo de l'
solution est sans doute le plus court
Aussi, merci de me rappeler à l'ordre le Python chaîne module.
- pour ce que vous utilisez le dict plus tard? peut-être il y a une solution plus élégante, en premier lieu.
Vous devez vous connecter pour publier un commentaire.
Je trouve cette solution plus élégante:
d = list(string.ascii_lowercase)
si quelqu'un a besoin de la liste..ou peut-être:
ou encore:
La meilleure solution pourrait être un autre, en fonction des valeurs que vous voulez dans le dict.
Je vais faire une supposition ici: voulez-vous compter les occurences des lettres dans un texte (ou quelque chose de similaire)? Il y a une meilleure façon de le faire que de commencer avec un initialisé dictionnaire.
Utilisation
Counter
de lacollections
module:Si vous prévoyez de l'utiliser pour compter, je suggère ce qui suit:
Voici une version compacte, à l'aide d'un compréhension de liste:
Encore un autre 1-liner Python hack:
Il y a cela aussi:
string.ascii_lowercase
. Que faire si vous avez manqué (tapé deux fois) une lettre? Comment pouvez-vous dire maintenant, dans 6 mois?string.ascii_lowercase
n'ont pas de tels problèmes.très facile avec le dictionnaire des compréhensions :
{chr(i+96):i for i in range(1,27)}
génère :
{'a': 1, 'c': 3, 'b': 2, 'e': 5, 'd': 4, 'g': 7, 'f': 6, 'i': 9, 'h': 8, 'k': 11, 'j': 10, 'm': 13, 'l': 12, 'o': 15, 'n': 14, 'q': 17, 'p': 16, 's': 19, 'r': 18, 'u': 21, 't': 20, 'w': 23, 'v': 22, 'y': 25, 'x': 24, 'z': 26}
Vous pouvez générer le même pour la Capitale de A-Z avec
chr(i+64)
Un dictionnaire avec les lettres de l'alphabet que les clés et la valeur est la même que la clé: