2015-12-23 4 views
0

Я начинаю изучать python, и у меня возникают проблемы с получением n вывода для печати в txt-файл на рабочем столе. Я хочу, чтобы это был Mac и Windows. Я продолжаю получать синтаксическую ошибку в строке, которая не существует, или нет такого каталога файлов в строке 4. Я пытаюсь создать текстовый файл.Выпуск записи в файл

import os 
os.path.join("~","Desktop") 
output_file = open(os.path.join("~","Desktop","PythoBLASTout.txt"),"w") 
from Bio import SearchIO 
E_VALUE_THRES = 0.01 
with open('/Users/evanclark/conesnail.xml', 'rU') as input: 
    for qresult in SearchIO.parse(input, "blast-xml"): 
     hits = qresult.hits 
     query_id = qresult.id 
     if len(hits) > 0: 
      target_id = hits[0].id 
      evalue = hits[0].hsps[0].evalue 
      if evalue < E_VALUE_THRES: 
       print("%s\t%s" % (query_id, target_id)) 


     #output_file.write("%s\t%s" % (query_id, target_id) 
+1

Пожалуйста, убедитесь, что все ваши импорта сделаны в начале вашей программы. –

ответ

1

Если вы хотите сделать тильды вам нужно указать Python, чтобы сделать это в явном виде:

output_file = open(os.path.expanduser(os.path.join("~", ...)), "w") 
+0

Это сработало, спасибо, FYI есть 2 круглых скобки перед w и один после. –

+0

Еще одна вещь, когда я добавляю прокомментированную строку внизу, я получаю синтаксическую ошибку в строке 17, даже если нет строки 17. –

+0

Похоже, что вы не видите закрытия) на этой строке. – Turn