можете смотреть примеры на сайте. Опишу только принцип использования.
Допустим Вам надо сделать массу документов программно.
1 Берете GUI редактор, делаете документ-шаблон.
2 Сохраняете в текстовом виде (html, latex)
3 полученный текст переносите в программу в виде строки.
4 В этом тексте делаете разметку. ${name} для переменных которые будут программно меняться %for для циклов и т.п. см по документации Mako. Это творческая фаза - обобщение исходного документа.
5 Запускаете в цикле Template(tpl).render(data=data,auth=u“Иванов”) подставляя нужные аргументы.
6 для конвертации в pdf возможно потребуется вызвать постпроцессор (pdflatex,html2pdf и т.п.)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from mako.template import Template
tpl=u"""
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
</head>
<body lang="ru-RU">
<h1>Отчет</h1>
<table style="width:300px" border="1">
%for i,d in enumerate(data):
<tr>
<td>${i}</td> <td>${d}</td>
%endfor
</table>
Выполнил Иванов
</body>
</html>
</html>"""
data=[1,2,3]
print Template(tpl).render(data=data,auth=u"Иванов")