【发布时间】:2020-11-30 16:36:27
【问题描述】:
我的问题如下:
dnaSequence = file2.readline()
for key in nucleotides:
keys = " ".join(key)
value = re.search(f"(?:({key}){{2,}}|({key}))", dnaSequence)
value = int(len(value.group(0)) / len(key))
STRs = {key: value}
print(STRs)
我必须通过读取包含未知 DNA 链的文件并使用正则表达式来查找该链中最大重复的核苷酸序列来解决这个问题。诸如 AAGT、AGTC、TTTTTTCT 等。 上面的代码给了我以下结果:
{'AGATC': 4}
{'AATG': 1}
{'TATC': 5}
字典键是我必须查找的核苷酸链。数字(值)是这些核苷酸连续重复的次数。 所以,为了启发,第一个结果意味着我的正则表达式在文件中的一条长 DNA 链中找到了 AGATCAGATCAGATCAGATC。
我期待的是 {'AGATC': 4, 'AATG': 1, 'TATC': 5}。 如何将这 3 个不同的值合并到一个字典中?
【问题讨论】:
标签: python dictionary for-loop merge