@hey_umbrella

Как перебрать одно слово в каждой строке?

elif '<math-input-answer>' in answer_row['content']:
            correct= answer_row['content'].partition('<math-input-answer>')[2].partition('</math-input-answer>')[0]
            print(correct)


Я этим кодом достаю из этого текста значения,которые находятся внутри тега math-input-answer ,но сейчас он достает только первое значение x+y,а дальше не идет,как правильно засунуть это в цикл?
<p><vim-math id="m7859635math1">AB+CD=|</vim-math><math-input id="m7859635MI1" keyboard-skin="junior" keyboard-type="base" strict-check="false">
  <math-input-answer>x+y</math-input-answer>
  <math-input-answer>y+x</math-input-answer>
</math-input><vim-math id="m7859635math2">|+|</vim-math><math-input id="m7859635MI2" keyboard-skin="junior" keyboard-type="base" strict-check="false">
  <math-input-answer>t+z</math-input-answer>
  <math-input-answer>z+t</math-input-answer>
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
data = '''<p><vim-math id="m7859635math1">AB+CD=|</vim-math><math-input id="m7859635MI1" keyboard-skin="junior" keyboard-type="base" strict-check="false">
  <math-input-answer>x+y</math-input-answer>
  <math-input-answer>y+x</math-input-answer>
</math-input><vim-math id="m7859635math2">|+|</vim-math><math-input id="m7859635MI2" keyboard-skin="junior" keyboard-type="base" strict-check="false">
  <math-input-answer>t+z</math-input-answer>
  <math-input-answer>z+t</math-input-answer>'''
  
string = '<math-input-answer>'
results =[]
 
def get_text(line):
    line = line.split('>')[1]
    line = line.split('<')[0]
    return line
     
for line in data.splitlines():
    if string in line:
        result = get_text(line)
        results.append(result)
print(results)

Тут я сочинил совершенно безобразную функцию парсинга, потому что лень прикручивать к примеру, натыканному на телефоне, bs4 или ещё что-нибудь такое, или сочинять regex…
вместо неё можно подставить более другую на своё усмотрение.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы