如何使用外部文件的字典

时间:2014-04-08 15:48:20

标签: python-3.x

我是编程新手。 我有一个短的单字母肽序列的txt文件,我试图将氨基酸的质量分配给每个肽中的每个单独的氨基酸。然后,我想要每个肽的每个氨基酸的质量总和,加上18。然后我希望将其作为肽质量列表返回。

到目前为止,我有这个:

aaMass = {'G':57.02146, 'V':99.06841, 'Y':163.06333, 'W':186.07931, 'T':101.04768, 'S':87.03203, 'P':97.05276, 'F':147.06841, 'M':131.04049, 'K':128.09496, 'L':113.08406, 'I':113.08406, 'H':137.05891, 'Q':128.05858, 'E':129.04259,'A':71.03711, 'R':156.10111, 'N':114.04293, 'D':115.02694, 'C':103.00919}

file= open('BSA_digest.txt', 'r')

for line in file:

    for AA in line:

        (aaMass)

我不知道接下来该做什么。我打印(aaMass)只是为了看看会发生什么,这只是给我一个很长的列表,列出了我的文件中的每一个氨基酸的质量。

我很欣赏一些指导。

干杯

1 个答案:

答案 0 :(得分:0)

假设每条线都是肽,那么该线中的每个字符都是氨基酸:

with open('BSA_digest.txt') as f:
    masses = [18 + sum(aaMass[c] for c in line.strip()) for line in f]

这是一个list comprehension,并将为行中的每个字符添加相应的质量,并添加18,构建一个列表,其中每个条目对应于文件中的每一行。