Следующие коды будут распечатывать все последовательности в записи.
Как мне оценить конкретный?
from Bio.Blast import NCBIWWW
from Bio.Blast import NCBIXML
fly=0
grape=0
with open('input.txt', 'r') as file:
count = 1
for i in file:
print("Sequence {} :{} Length: {}".format(count, i[:20], len(i)))
count += 1
count -= 1
print("There are %d sequences." % count) # count = 10
file.seek(0) # move position indicator to the start.
for i in range(1,2):
seq = file.readline()
try:
with open('dna_lab5_%d.xml' % i, 'r') as f:
print("Using saved file")
except FileNotFoundError:
print("Performing online BLAST search")
with open('dna_lab5_%d.xml' % i, 'w') as f:
handle = NCBIWWW.qblast("blastn", "nt", seq)
result = handle.read()
f.write(result)
finally:
with open('dna_lab5_%d.xml' % i,'r+') as f:
records=NCBIXML.parse(f)
for record in records:
for alignment in record.alignments:
for hsp in alignment.hsps:
print(alignment.title)
# if "melanogaster" in alignment[0].title:
# fly+=1
# else:
# grape+=1
#
# print (fly)
Я хочу первую строку последовательности, поэтому я попробовал
records[0].alignments[0].hsps[0].title
Я также пытался
records.alignments[0].title
Никто из них не работал.
Могу ли я узнать, как правильно читать их?
Спасибо