只有在使用循环时,Julia字典“找不到密钥”

时间:2014-06-16 17:27:50

标签: dictionary key julia

仍然试图找出这个problem(我having problems正在构建一个字典,但感谢rickhg12hs)设法让它工作。

这是我目前的代码:

#open files with codon:amino acid pairs, initiate dictionary:
file = open(readall, "rna_codons.txt")
seq = open(readall, "rosalind_prot.txt")
codons = {"UAA" => "stop", "UGA" => "stop", "UAG" => "stop"}

#generate dictionary entries using pairs from file:
for m in eachmatch(r"([AUGC]{3,3})\s([A-Z])\s", file)
    codon, aa = m.captures
    codons[codon] = aa
end

所有代码似乎都按预期工作。此时,我有我想要的字典,右键指向正确的条目。例如,如果我只是print(codons["AUG"]),则打印'M',这是正确的输出。现在我想扫描第二个文件中的字符串,并且每3个字母,拉出字典中引用的条目并将其添加到prot字符串。所以我试过了:

for m in eachmatch(r"([AUGC]{3,3})", seq)
    amac = codons[m.captures]
    prot = "$prot$amac"
end

但这会导致错误key not found: ["AUG"]。我知道密钥存在,因为我可以打印codons["AUG"]并返回正确的条目,那么为什么它不能在循环中找到该密钥?

0 个答案:

没有答案