Использование Jinja2 .
Создайте шаблон HTML с переменными в тех местах, где вам нужно отобразить введенные пользователем данные. Затем визуализируйте шаблон со словарем, содержащим эти данные.
Здесь я напишу вам вспомогательный модуль.
# templates.py
import jinja2 as jinja
def create_env():
loader = jinja.FileSystemLoader(PATH_TO_YOUR_TEMPLATES)
env = jinja.Environment(loader=loader)
return env
env = create_env()
def render(name, context=None):
context = context or {}
return env.get_template(name).render(context)
# my_module.py
import templates
data = {
'first_name': 'John',
'last_name': 'Smith',
}
html = templates.render('my_template.html', data)
# do something with html string
# my_template.html
<p>Hello, {{ first_name }} {{ last_name }}. This is a template.</p>