본문 바로가기
Python

Python의 Jinja2에서 For문 Index값 얻는 방법

by daewooki 2021. 9. 16.
반응형

Python의 Jinja2(Flask)에서 For문 Index값 얻는 방법에 대한 설명이다.

 

 

기본적으로 jinja2에서 for문은 아래와 같이 사용된다. 

{% for item in items %}
    {{ item }}
{% endfor %}

 

item을 나열하는 방식의 for문이다. 

 

이 때 몇 번째 줄인지를 함께 입력하고 싶을 때 for문의 index가 필요하다. 

방법은 많다.

 

index를 변수로 설정해서 하나씩 늘려줘도 되지만, jinja2에서는 loop 객체를 제공하여 쉽게 index에 접근할 수 있다.

loop.index는 1부터 시작하는 인덱스를 반환해주기 때문에 아래와 같이 쉽게 몇 번째인지 알 수 있다.

{% for item in items %}
    {{ loop.index }}번째 아이템: {{ item }}
{% endfor %}

 

Jinja2에서 for 문의 loop객체는 아래와 같이 다양한 속성이 있다.

  • loop.index : 1부터 시작하는 인덱스 값 반환
  • loop.revindex : 반대부터 시작하는 인덱스 값 반환
  • loop.index0 : 0부터 시작하는 인덱스 값 반환
  • loop.revindex0 : 반대부터 시작하는 인덱스 값으로 0을 기준으로 반환
  • loop.first : 첫 번째 루프인지 아닌지 boolean값 반환
  • loop.last : 마지막 루프인지 아닌지 boolean값 반환
  • loop.length : 전체 루프의 길이를 반환

 

반응형

댓글