2016-06-19 3 views
-2

Моя переменная tag теряет ссылки, когда входит вложенная for:Переменная теряет ссылку внутри вложенного цикла

file_with_all_tags = open("tags.txt", "r") 
origem = open("origem.html", "r") 

for tag in file_with_all_tags: 

    final_file_name = "tag-" + tag + ".html" 
    final_file = open(final_file_name, "w") 

    for line in origem: 
     if tag in line: # HERE THE VARIABLE 'TAG' IS EMPTY 
      final_file.write(line) 

    final_file.close() 

origem.close() 
file_with_all_tags.close() 
+2

Нет, это не так. Единственный способ получить пустое значение внутри цикла, если он пуст, чтобы начать с. Пожалуйста, покажите пример ввода и вывода, чтобы мы могли видеть, что действительно происходит; возможно, у вас есть пустая строка в вашем файле. –

+1

Но пустая строка не пуста - у нее будет строка. Единственная потенциально пустая строка - последняя. – TigerhawkT3

+0

Готов поспорить, что 'print (final_file_name)' будет производить 'tag-.html' –

ответ

0

проблема решена! На самом деле моя итерация по файлу «origem.html» истощалась. Мне пришлось перемещать функции open() и close() внутри цикла. Спасибо, парни! Спасибо @rrauenza!

Смежные вопросы