195 votes

Carte de hachage en Python

Je souhaite implémenter une HashMap en Python. Je veux demander à un utilisateur une entrée. en fonction de son entrée, je récupère des informations du HashMap. Si l'utilisateur entre une clé du HashMap, je souhaite récupérer la valeur correspondante.

Comment implémenter cette fonctionnalité en Python ?

 HashMap<String,String> streetno=new HashMap<String,String>();
   streetno.put("1", "Sachin Tendulkar");
   streetno.put("2", "Dravid");
   streetno.put("3","Sehwag");
   streetno.put("4","Laxman");
   streetno.put("5","Kohli")

306voto

Alan Points 21367

Le dictionnaire Python est un type intégré qui prend en charge les paires clé-valeur.

 streetno = {"1": "Sachin Tendulkar", "2": "Dravid", "3": "Sehwag", "4": "Laxman", "5": "Kohli"}

ainsi que d'utiliser le mot-clé dict :

 streetno = dict({"1": "Sachin Tendulkar", "2": "Dravid"}) 

ou alors:

 streetno = {}
streetno["1"] = "Sachin Tendulkar" 

32voto

Christian Jonassen Points 1797

Tout ce que vous vouliez (au moment où la question a été posée à l'origine) était un indice. Voici un indice : en Python, vous pouvez utiliser des dictionnaires .

28voto

Edwin Points 1335

Il est intégré à Python. Voir dictionnaires .

D'après ton exemple :

 streetno = {"1": "Sachine Tendulkar",
            "2": "Dravid",
            "3": "Sehwag",
            "4": "Laxman",
            "5": "Kohli" }

Vous pourrez alors y accéder comme ceci :

 sachine = streetno["1"]

A noter également : il peut utiliser n'importe quel type de données non modifiable comme clé. C'est-à-dire qu'il peut utiliser un tuple, un booléen ou une chaîne comme clé.

19voto

totaam Points 502
streetno = { 1 : "Sachin Tendulkar",
            2 : "Dravid",
            3 : "Sehwag",
            4 : "Laxman",
            5 : "Kohli" }

Et pour récupérer les valeurs :

 name = streetno.get(3, "default value")

Ou alors

 name = streetno[3]

C'est utiliser des nombres comme clés, mettre des guillemets autour des nombres pour utiliser des chaînes comme clés.

18voto

unwind Points 181987

Les cartes de hachage sont intégrées à Python, elles s'appellent des dictionnaires :

 streetno = {}                        #create a dictionary called streetno
streetno["1"] = "Sachin Tendulkar"   #assign value to key "1"

Usage:

 "1" in streetno                      #check if key "1" is in streetno
streetno["1"]                        #get the value from key "1"

Consultez la documentation pour plus d'informations, par exemple les méthodes intégrées, etc. Ils sont géniaux et très courants dans les programmes Python (sans surprise).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X