[英]checking if a list is a key in a dictionary and returning corresponding value
這是我的代碼:
with open('file.txt','r') as f:
table = {}
for lines in f:
co1,co2,co3,pro1,pro2,pro3 = (
item.strip() for item in lines.split(',',5))
codon=str(co1 + co2 + co3)
table[codon] = pro2
print(table)
我需要將他們所說的dan_seq
拆分為 3 個塊,然后將其與我創建的字典匹配,即如果塊是我字典中的一個鍵,則返回它的值
dna_seq = list('AAAGTTAAATAATAAATAGGTGAA')
圖片是文本文件:
您可以使用切片將dna_seq
塊,然后使用table.get
獲取匹配值:
>>> dna_seq = 'AAAGTTAAATAATAAATAGGTGAA'
>>> [dna_seq[i:i+3] for i in range(0, len(dna_seq), 3)]
['AAA', 'GTT', 'AAA', 'TAA', 'TAA', 'ATA', 'GGT', 'GAA']
>>> for chunk in [dna_seq[i:i+3] for i in range(0, len(dna_seq), 3)]:
... print(table.get(chunk))
您需要將字符串分成大小為 3 的塊,您可以通過以下方式完成: dna_seq[i:i+3] for i in range(0, len(dna_seq), 3)
並且您的最終代碼看起來有點像:
for i in range(0, len(dna_seq), 3):
current_seq = dna_seq[i:i+3]
# check if this value exists, then print it
if current_seq in table:
print(table[current_seq])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.