Вы говорите, что вы новичок в Python, поэтому я начну с очень низкого уровня. Вы можете перебирать строки в файле очень просто в Python
fyle = open("contents.txt")
for lyne in fyle :
# Do string processing here
fyle.close()
Теперь как разобрать это. Если каждая директива форматирования (например, p, h1) находится на отдельной строке, вы можете легко это проверить. Я бы создал словарь обработчиков и получил бы обработчик следующим образом:
handlers= {"p": # p tag handler
"h1": # h1 tag handler
}
# ... in the loop
if lyne.rstrip() in handlers : # strip to remove trailing whitespace
# close current handler?
# start new handler?
else :
# pass string to current handler
Вы можете сделать то, что Даниэль Приден предложил и сначала создать структуру данных в памяти, а затем сериализовать этот XHTML. В этом случае обработчики будут знать, как создавать объекты, соответствующие каждому тегу. Но я думаю, что более простое решение, особенно если у вас не так много времени, у вас есть просто перейти прямо к XHTML, сохраняя стек текущих вложенных тегов. В этом случае ваш «обработчик» может быть простой логикой для записи тегов в выходной файл / строку.
Я не могу сказать больше, не зная специфики вашей проблемы. И кроме того, я не хочу делать всю твою домашнюю работу за тебя. Это должно дать вам хорошее начало.