• 회원가입
  • 로그인
  • 구글아이디로 로그인

[filters] Jinja - last() 필터 - 시퀀스의 마지막 아이템 반환. (= last필터 = 라스트필터) ※ 마지막값

목차
  1. last() 예제 - 마지막 아이템 반환
  2. last() 정의
  3. last() 구문

 

last() 예제 - 마지막 아이템 반환

 

{% set data = ['apple', 'banana', 'orange', 'grape', 'kiwi'] %}

마지막값: {{ data|last }} {# kiwi #}

 


 

{% set data = [

    {'name': 'Python', 'version': 3.9},

    {'name': 'Jinja', 'version': 2.11},

    {'name': 'Flask', 'version': 1.1},

    {'name': 'Jinja', 'version': 3.0}

] %}


마지막값: {{ data|last }} {# {'name': 'Jinja', 'version': 3.0} #}

 

마지막값: {{ data|selectattr('name', '==', 'Jinja')|list|last }}

{# {'name': 'Jinja', 'version': 3.0} #}

 

 

last() 정의

 

시퀀스의 마지막 아이템 반환하는 필터.

 


 

1.

  • last() 필터가 제너레이터(generators)에서는 작동 X. (대신, 명시적으로, List(리스트)로 변환해 사용하는 방법 있음. (예) {{ data | selectattr('name', '==', 'Jinja') | list | last }}
  • 제너레이터(generator)는 반복 가능한(iterable) 객체 중 하나로, 필요한 값들을 필요한 시점에 생성하는데 사용됨. 제너레이터는 모든 값을 메모리에 한꺼번에 저장하지 않고, 필요한 값들을 요청할 때마다 생성함. 이는 메모리를 효율적으로 사용하며, 매우 큰 데이터 세트를 처리할 때 유용.
  • 그러나 last 필터와 같이 시퀀스의 마지막 요소를 가져오는 필터는 제너레이터와 함께 사용할 수 없음. 왜냐하면 제너레이터는 순회 중에 한 번만 값을 생성하고, 순회가 끝나면 값을 다시 생성할 수 없기 때문임. 이러한 이유로 last 필터와 같은 일부 필터는 제너레이터와 함께 사용할 수 없음.
  • 따라서, last 필더 사용하려면 리스트나 딕셔너리와 같은 반복 가능한(iterable) 객체로 변환 필요함.

 

2. cf.

  • first() 필터 - 시퀀스의 첫번째 아이템 반환.


3. 공식 매뉴얼

https://jinja.palletsprojects.com/en/3.1.x/templates/#jinja-filters.last

 

 

last() 구문

 

jinja-filters.last(seq: 't.Reversible[V]') → 't.Union[V, Undefined]'

 


방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
filters Jinja - abs() 필터 - 절대값으로 변환. (= abs필터 = 앱스필터) ※ 숫자를 절대값으로 변경
filters Jinja - attr() 필터 - 객체의 속성 얻기. (= attr필터 = 어트르필터) ※ 속성만 조회
filters Jinja - batch() 필터 - 아이템 일괄처리. (= batch필터 = 배치필터) ※ for 반복문 …
filters Jinja - capitalize() 필터 - 첫글자만 대문자로 변환. (= capitalize필터 = 캐피…
filters Jinja - center() 필터 - 문자열 가운데 정렬/배치. (= center필터 = 센터필터)
filters Jinja - default() 필터 / d() 필터 - 변수가 정의 안 된 경우 기본값 출력. (= def…
filters Jinja - dictsort() 필터 - 딕셔너리 키 또는 값으로 정렬. (=dictsort필터 = 딕트소…
filters Jinja - escape() 필터 / e() 필터 ★ - HTML 태그를 HTML 실체값으로 변환. (= …
filters Jinja - filesizeformat() 필터 - 파일 크기를 사람이 읽을 수 있는 형식으로 변환. (=…
filters Jinja - first() 필터 - 시퀀스의 첫번째 아이템 반환. (= first필터 = 퍼스터필터) ※ …
filters Jinja - float() 필터 - 값을 부동소수로 변환. (= float필터 = 플로우트필터) ※ ※ 문…
filters Jinja - forceescape() 필터 ★ - 모든 특수문자를 HTML 회피처리. (= forceesc…
filters Jinja - format() 필터 - 문자열을 서식 문자열에 따라 변환. (= format필터 = 포맷필터…
filters Jinja - groupby() 필터 - 속성별로 객체 시퀀스를 그룹화. (= groupby필터 = 그룹바이…
filters Jinja - indent() 필터 - 문자열 들여쓰기. (= indent필터 = 인덴트필터)
filters Jinja - int() 필터 - 정수로 변환. (= int필터 = 인트필터) ※ 문자열숫자나 부동소수를 정…
filters Jinja - items() 필터 - 매핑의 (키, 값) 항목에 대한 반복자를 반환. (= items필터 =…
filters Jinja - join() 필터 - 시퀀스의 문자열을 연결한 문자열을 반환. (= join필터 = 조인필터)
filters Jinja - last() 필터 - 시퀀스의 마지막 아이템 반환. (= last필터 = 라스트필터) ※ 마지…
filters Jinja - length() / count() 필터 - 컨테이너 안 아이템 개수 반환. (= length필…
1/3
목록
찾아주셔서 감사합니다. Since 2012