2016-12-05 3 views
1

Код ниже дает мне словарь mw_vs_sasa только из 19 элементов, хотя оба файла amino_acid_dictionary и amino_acid_mw имеют 20. Пожалуйста, помогите мне отладить его.Итерация над двумя словарями в python

amino_acid_dictionary = {'ALA': ALA, 'ARG': ARG, 'ASN': ASN, 'ASP': ASP, 
         'CYS': CYS, 'GLU': GLU, 'GLN': GLN, 'GLY': GLY, 
         'HIS': HIS, 'ILE': ILE, 'LEU': LEU, 'LYS': LYS, 
         'MET': MET, 'PHE': PHE, 'PRO': PRO, 'SER': SER, 
         'THR': THR, 'TRP': TRP, 'TYR': TYR, 'VAL': VAL} 

    amino_acid_mw = {'ALA': 89.09, 'ARG': 174.20, 'ASN': 132.12, 'ASP': 133.10, 
         'CYS': 121.16, 'GLU': 147.13, 'GLN': 146.15, 'GLY': 75.07, 
         'HIS': 155.16, 'ILE': 131.18, 'LEU': 131.18, 'LYS': 146.19, 
         'MET': 149.21, 'PHE': 165.19, 'PRO': 115.13, 'SER': 105.09, 
         'THR': 119.12, 'TRP': 204.23, 'TYR': 181.19, 'VAL': 117.15} 
    mw_vs_sasa = {} 
    oo=0 
    for (title, weight) in amino_acid_mw.items(): 
     oo+=1 
     print(oo) 
     mw_vs_sasa[weight] = np.mean(amino_acid_dictionary[title]) 

ответ

0
mw_vs_sasa = {} 
for i, (title, weight) in enumerate(amino_acid_mw.items()): 

    print(i, title) 
6

В amino_acid_mw словарь у вас есть те же веса для 'ILE' и 'LEU' поэтому в новом словаре вы можете иметь только один ключ 131.18. Ключи должны быть уникальными. Вам нужно изменить свой ключ на что-то уникальное.

+1

хороший улов, я знал, что это была основная проблема, но я не мог ее обнаружить. –

Смежные вопросы