0
我有一個工作代碼,它在ncbi服務器上執行BLAST,然後以xml格式返回序列。它正在工作,但我想避免製作新文件並直接在終端上打印BLAST結果。這是否有一個很好的解決方案呢?我粘貼在我的代碼下面,這是工作,但它正在創建一個新的文件。使用biopython創建沒有創建任何文件的文件
result_handle = NCBIWWW.qblast(
"blastx",
"nr",
sequences,
entrez_query = organism)
save_file = open("BLAST.xml", "w")
save_file.write(result_handle.read())
save_file.close()
result_handle.close()
result = open("BLAST.xml", "r")
records = NCBIXML.parse(result)
for i, record in enumerate(records):
if record.alignments == []:
print ("There is no BLAST result")
else:
for align in record.alignments:
print (align.hit_id)
break
我想要做這樣的事情:
result = result_handle.read()
record = NCBIXML.parse(result)
for i, record in enumerate(record):
但它無法正常工作。
謝謝您提前!
*「它不工作」*不是有效的問題陳述。請編輯您的問題並解釋發生了什麼,包括任何錯誤或回溯的全文**。此外,請確保您的示例代碼是可以由任何人運行的[mcve],並且不依賴於以前定義的變量,如「序列」或「有機體」。您的進口報表也應包括在內。 – MattDMo