0
votes

Comment appeler chaque valeur d'un dictionnaire par sa clé?

Je veux séparer chaque paire (touche, valeur) d'un dictionnaire et souhaiter appeler chaque valeur par son nom de clé.

J'ai deux listes, xxx

Maintenant, j'ai créé un dictionnaire comme celui-ci, xxx

donc, maintenant si je veux voir de la valeur pour chaque touche, je dois taper: dict [clé] .

maintenant je m'attends à ce que mon résultat soit comme: Si je demande la valeur de chaque clé, je dois simplement taper clé pas dict [clé] Et cela devrait me donner la réponse.

Typing 1 doit donner A . Typage 2 doit donner B .


2 commentaires

Utilisez int (entrée ()) pour obtenir la clé de l'utilisateur et imprimer avec dict [user_input] .


Pourquoi cela mais traiter 1 comme a pourquoi?


3 Réponses :


0
votes

Vous pouvez en quelque sorte faire comme ça, mais vous si vous pouvez simplement accéder ci-dessous n'est pas une très bonne idée honnêtement. Vous pouvez définir la clé en tant qu'attribut d'un objet.

mais il ne fonctionnera pas pour le dictionnaire que mon dictionnaire d'entrée est {"key1": "Apple"} code> p>

class MyDict:
    def __init__(self,input_dict):
        for key,value in input_dict.items():
            setattr(self,key,value) #setting key as attribute

obj = MyDict({"key1":"Apple"}) #new instance                    
print(obj.key1) # this will print Apple


0 commentaires

0
votes

Si vous voulez boucle sur des valeurs de dictionnaire, vous pouvez utiliser dict.values ​​() : xxx


0 commentaires

0
votes

à l'intérieur d'une telle boucle réelle, continuez à éclairer les objets de vos listes jusqu'à ce que vous rencontriez une indexError, comme ceci:

ListA = [1, 2, 3]
ListB = ['A', 'B', 'C'] 
DictC = {}

while True:
   try:
     DictC[ListA.pop(0)] = ListB.pop(0)
   except IndexError:
     break

print(DictC)


0 commentaires