2016-11-04 4 views
-1

Использование двух для циклов и получения этого результата.Как игнорировать первую строку цикла for в python

TABL 1st Line 
TABL 
TABL 2nd Line 
TABL 3rd Line 

Что я хочу:

TABL 1st Line 
TABL 2nd Line 
TABL 3rd Line 

Я использую LXML для извлечения данных из XML-то вроде этого.

for ent in row.xpath('entry/text()'): 
    entry_text+=" "+ent 
print("TABL "+entry_text) 
+0

Вы можете избежать выбора пустого текстового узла, добавив предикат следующим образом: 'row.xpath («вход/текст() [нормализуют-пространство()]»)' – har07

ответ

0

Это потому, что в вашем списке есть пустые/чистые данные.

Вы бы лучше с генератором понимания: вы можете сделать работу эффективно (конкатенация под-производительный), и в одной строке

"\n".join("TAB "+e for e in row.xpath('entry/text()') if e.strip()) 
  • перебрать элементы, как e, и только выдает что-то в итераторе, если e не пуст или только пробел (если вывести вывод, мы не можем быть уверены).
  • присоединиться результат, используя "\n"

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

  • Нет связанных вопросов^_^