2016-12-05 91 views
1

下面的代码给我一个只有19个项目的mw_vs_sasa字典,即使氨基酸字典和氨基酸字符都有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

不错,我知道这一定是潜在的问题,但我无法发现它。 –