Найти - Пользователи
Полная версия: пропустить несколько итераций если...
Начало » Python для новичков » пропустить несколько итераций если...
1
papuas
Доброго времени суток.
Никак не могу решить простую задачку.

 <ul>
  <a href="Parse me"></a>
</ul>
<ul>
  <li>bla-bla-bla</li>
</ul>
<ul>
  <li>bla-bla-bla</li>
</ul>
<ul>
  <li>something text Need parse</li>
</ul>
<ul>
  <a href="Parse me"></a>
</ul>
и так далее

lxml.html

 for i, k in enumerate(tree.iter('ul')):
      x = k.text_content()
      if x.startswith('Parse me'):
            print i, x

 0 Parse me
4 Parse me

как связать, чтобы вывод был таким?

 0 Parse me 3 something text Need parse
4 Parse me 7 something text Need parse




xkbd
Что ты хочешь сделать? Вывести текст по индексу i+2?

      need_parse_index = None
     for i, k in enumerate(tree.iter('ul')):
        x = k.text_content()
        if i == need_parse_index:
            need_parse_index = None
            print i, x
        elif x.startswith('Parse me'):
            print i, x,
            need_parse_index = i+2
papuas
xkbd
Что ты хочешь сделать? Вывести текст по индексу i+2?
абсолюли.
и я уже нашел выход, но попробую и твой вариант, а также не откажусь от других.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB