2010-03-06 7 views
1

J'ai un problème simple que je ne peux pas résoudre. J'ai un dictionnaire:Python: Dictionnaire simple référençant Problème

aa = {'ALA':'A'} 
test = 'ALA' 

J'avoir des problèmes de code écrit où cette valeur de test est effectué et référencé dans le aa dictionnaire et « A » est imprimé. Je suppose que je devrais utiliser une boucle for? quelque chose comme ...

for i in test: 
    if i in aa: 
     print i 

J'understrand comment référencé un dictionnaire:

aa['ALA'] 

Sa prenant la valeur de i et l'utiliser pour faire référence aa j'ai des ennuis avec.

Merci

James

Répondre

2

Je ne sais pas ce que vous essayez de faire, mais peut-être vous dire:

aa = {'ALA':'A'} 
test = ['ALA'] ### note this is now a list! 

for i in test: 
    if i in aa: 
     print i, aa[i] #### note i is the key, aa[i] is the value 

Notez que vous pouvez faire trois types d'itérateurs différents d'un dictionnaire:

aa.iteritems() # tuples of (key, value) 
       # ('ALA', 'A') 
aa.iterkeys() # keys only -- equivalent to just making an iterator directly from aa 
       # 'ALA' 
aa.itervalues() # items only 
       # 'A' 
2

Je suis avoir à écrire du code du mal où cette valeur de test est effectué et référencé dans le aa dictionnaire et « A » est imprimé.

Voulez-vous dire cela?

print aa[test] 

Sa prenant la valeur de i et de l'utiliser pour faire référence aa j'ai des ennuis avec.

Je ne comprends pas exactement pourquoi vous êtes itérer sur les caractères dans la variable chaîne test. Est-ce vraiment ce que tu veux? Le reste de votre question suggère que ce n'est pas le cas.

+0

Je prévois en utilisant ceci sur un dictionnaire plus grand, plusieurs valeurs sont prises, référencées dans un dictionnaire et imprimées. Je n'avais pas l'intention d'interagir sur le personnage, je comprends maintenant que je l'ai fait. – James

Questions connexes