Консоль указывает, что я выполняю операции с закрытым файлом, даже если я использовал команду «с открытым»

#python #xml-parsing #biopython

Вопрос:

Я борюсь с этим. Я пытаюсь написать небольшой отчет о приведенном выше XML-файле, но когда я запускаю код, он уведомляет об ошибке, начиная с момента ввода команд печати, указывая, что я использую эти операции с закрытым файлом. Мой код выглядит правильно с отступом, поэтому я не знаю, что не так… спасибо вам за вашу помощь

 #parsing the results

with open("mirna_blast.xml","r") as file_handle:

    blast_record_list=NCBIXML.parse(file_handle)
    #using parse since there are 6 sequences in the file

    #for loop as parsing returns an ITERATOR
    for blast_record in blast_record_list:
        print("tQuery description : ",blast_record.query)
        print("tQuery length : ",blast_record.query_length)
        print("tQuery ID : ",blast_record.query_id)
 

Комментарии:

1. Ты пробовал print(blast_record_list) ? Возвращает ли это что-то

2. всегда помещайте полное сообщение об ошибке (начинающееся со слова «Обратная связь») в вопрос (не комментарий) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.

3. вы уверены, что у вас одинаковые отступы в полном коде?

4. Этот код работает для меня, если я использую его в тестовом файле в biopython: github.com/biopython/biopython/tree/master/Tests/Blast/… Ошибка, которую вы видите, может быть вызвана использованием file_handle вне (после) оператора with.