2016-09-03 4 views
1

Я хочу вернуть уникальные элементы в шаблон Jinja. Упрощенная:Используйте ключевое слово Python `set` в Jinja

{% set lst = [1, 2, 3, 3, 2] %} 
{% for t in set(lst) %} 
    {{ t }} 
{% endfor %} 

Но это бросает ошибку:

UndefinedError: 'set' is undefined 

И, кажется, трудно найти ответ на Google, как set также Дзиндзя ключевое слово. Могу ли я использовать ключевое слово Pв Jinja, или я могу вернуть уникальные элементы из списка в Jinja?

+0

вы используете Python 2 или 3? – Harrison

+0

Лично Python 3, но для этого конкретного вопроса я работаю в Python 2.7 – vlad

+0

Где эта ошибка, на первой или второй? –

ответ

-3

Какой набор делает это создать переменную, поэтому, когда вы используете set lst = 1, вы затем получить доступ к нему с lst, не set(lst)

редактировать: непонятый вопрос, чтобы получить доступ к функции питона из дзиндзя, вот что я делаю моя колба приложение

@app.context_processor 
def inject_python(): 
    return dict(set=set) 

Таким образом, джинджа будет иметь функцию, и вы можете использовать его, как вы делали

+1

Это не имеет никакого отношения к вопросу, так как OP намеревается получить уникальный список, т. Е. Набор. Не ключевое слово 'jinja', а функция ванильного Python. –

+0

отредактировано, это должно ответить на его вопрос тогда – iScrE4m

Смежные вопросы