У меня есть проблема с, если код заявления ниже:Python: Проблема с тем, если оператор
do_blast(x):
test_empty = open('/home/rv/ncbi-blast-2.2.23+/db/job_ID/%s.blast' % (z), 'r')
if test_empty.read() == '':
test_empty.close()
return 'FAIL_NO_RESULTS'
else:
do_something
def return_blast(job_ID):
if job_ID == 'FAIL_NO_RESULTS':
return '<p>Sorry no results :(boooo</p>'
else:
return open('/home/rv/ncbi-blast-2.2.23+/db/job_ID/job_ID_%s.fasta' % (job_ID), 'r').read()
По какой-то причине код пытается присвоить «JOB_ID» в файл FASTA в return_blast, даже если он должен был вернуться " жаль никаких результатов ". Я также понимаю, что имена файлов и расширения разные. У меня есть причины для этого.
Код отлично работает, когда файл test_empty не пуст.
Как именно эти две функции связаны? –
@Tim, я изменил отступ, потому что он вводил в заблуждение (и отступы - все в python) –
@Tim, отступ в коде, который вы отправили, был неправильным, так что понять вашу проблему невозможно. Проверьте его и отредактируйте свой Q (подсказка: не используйте вкладки - отступ с четырьмя пробелами на уровень). Не уверен, что @Brendan правильно прочитал ваш разум в его редактировании отступов, так как ваша проблема может быть легко связана с неправильными отступами (в зависимости, как @Greg справедливо спрашивает, как две, казалось бы, изолированные функции фактически «соединяются»). –