Python에서 자주 사용되는 Jinja2 템플릿 엔진에서 문자열의 길이를 구하는 방법에 대하여 알아보려고 합니다.
어떻게 하면 Jinja2에서 문자열 길이를 구하고 또 출력 할 수 있을까요?



# Python jinja2에서 문자열 길이 구하기
일단 방법부터 알아보면 표현식에 필터 length를 사용하는 것이 가장 간단하고 쉬운 방법으로 문자열의 길이를 구할 수 있습니다.

{{ 문자열 | length }}

즉 만약 'webisfree'인 경우 아래와 같이 필터 length를 사용하여 아래와 같이 사용할 수 있습니다.
{{ 'webisfree' | length }}

// 9를 출력함

예상한 것처럼 9를 출력했습니다. 간단합니다.

표현식을 사용해 출력했지만 if 분기문에도 사용할 수 있습니다.


! if 분기문을 사용해 날짜에 0 추가하기

쉽게 말해 1, 2, 3일 처럼 한 자리인 경우에만 01, 02, 03처럼 출력하는 방법을 알아봅니다. 당연히 이때도 필터 length를 사용해 가능합니다. 먼저 코드부터 살펴봅니다.

오늘 날짜는 visit.day라는 변수가 가지고 있다고 가정합니다.
{% if visit.day | length == 1%}
  {% set preDay = '0' %}
{% else %}
  {% set preDay = '' %}
{% endif %}

여기서 자릿수가 1인 경우 변수 preDay를 선언하고 값 0을 추가하였습니다. 자릿수가 1이 아니면 빈 문자열을 출력하게 되었죠. 이제 날짜에 따라 아래와 같이 각각 다른 값을 출력할 것입니다.
2 => 02를 출력
12 => 12를 출력
30 => 30을 출력

여기까지 jinja2 템플릿에서 문자열의 개수를 구하는 방법을 알아봤습니다.


[ 참고 링크 ]
변수 선언하는 방법 바로가기 >
https://webisfree.com/2017-11-29/python-flask에서-jinja2-변수-선언하는-방법