Получив объект шаблона, вы можете просто перебрать нужные значения и использовать метод render
для получения нового вывода следующим образом:
from mako.template import Template
template = Template('var1 = ${var1}')
for v in range(1, 5):
context = {'var1': v}
print template.render(**context)
Пример вывода:
var1 = 1
var1 = 2
var1 = 3
var1 = 4
Что касается идеи использования locals()
, это, безусловно, сработает:
for var1 in range(1, 5):
print template.render(**locals())
В любом случае, я предпочитаю явно создавать контекстный словарь. Это согласуется с дзен python , который утверждает, что явное лучше, чем неявное.
Наконец, что касается проблемы установки, я не знаю ни одного доступного двоичного файла, но вы можете установить, используя pip
, как описано на странице загрузки mako .