Синтаксическая ошибка при запуске BLAST онлайн с Biopython

Я пытаюсь создать сценарий для сравнения моих фаста-файлов из пиросеквенирования с базой данных нуклеотидов GenBank, следуя Учебнику и поваренной книге Biopython (Глава 7).

Во время выполнения процесса в подсказке отображается следующее сообщение:

result_handle=NCBIWWW.qblast("blastn", "nt", record.seq)
            ^
SyntaxError: invalid syntax

И я не знаю, в чем проблема, или как это исправить. У меня, вероятно, есть более поздние ошибки в моем сценарии. Но теперь я не могу продолжать работать с ним.


person Ma_fermar    schedule 17.09.2012    source источник
comment
Скорее всего, у вас есть незакрытые скобки или что-то подобное из предыдущей строки. Можете ли вы показать относительный фрагмент, содержащий строку result_handle?   -  person David Cain    schedule 18.09.2012
comment
record=SeqIO.read(open(/Users/imac/Desktop/sinchimeras_1.fasta, format=fasta) result_handle=NCBIWWW.qblast(blastn, nt, record.seq) archivo1=open(/Users/imac/Desktop/bacsoilpia0_otu. xml, w) archivo1.write(result_handle.read())   -  person Ma_fermar    schedule 18.09.2012


Ответы (1)


Из приведенного вами фрагмента кода вам просто нужно закрыть блок скобок вашей команды open- format — это параметр, который передается SeqIO.read, а не open.

record=SeqIO.read(open("/Users/imac/Desktop/sinchimeras_1.fasta"), # close parens
    format="fasta")
result_handle=NCBIWWW.qblast("blastn", "nt", record.seq)
archivo1=open("/Users/imac/Desktop/bacsoilpia0_otu.xml", "w")
archivo1.write(result_handle.read()) 
person David Cain    schedule 18.09.2012