import re
with open("../examples/ros_bio20_PRTM.txt") as f:
protein = f.read().rstrip()
table = """A 71.03711
C 103.00919
D 115.02694
E 129.04259
F 147.06841
G 57.02146
H 137.05891
I 113.08406
K 128.09496
L 113.08406
M 131.04049
N 114.04293
P 97.05276
Q 128.05858
R 156.10111
S 87.03203
T 101.04768
V 99.06841
W 186.07931
Y 163.06333 """
#正则匹配得出单同位素质量表
mass_table = {}
for line in table:
alp = re.match(r'[A-Z]', line)
num = re.match(r'\S', line)
if alp:
name = alp.group()
mass_table[name] = ''
elif num:
mass_table[name] += num.group()
else:
continue
total_mass = 0
for i in protein:
total_mass += float(mass_table[i])
print(round(total_mass, 3))