JNCIA-DevOps Python And PyEZ Practice Question
Which Jinja2 construct is used to define reusable blocks of template code that can be called with arguments like a function?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
{% macro %} ... {% endmacro %}
Macros in Jinja2 act like functions for templates.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
{% def %} ... {% enddef %}
Why it's wrong here
Incorrect. Def is Python syntax, not Jinja2.
- ✗
{% block %} ... {% endblock %}
Why it's wrong here
Incorrect. Blocks are for template inheritance, not parametrized functions.
- ✓
{% macro %} ... {% endmacro %}
Why this is correct
Correct. Macros allow creating reusable template functions.
- ✗
{% function %} ... {% endfunction %}
Why it's wrong here
Incorrect. Jinja2 uses the macro keyword, not function.
About these practice questions
Courseiva writes every JNCIA-DevOps question from scratch — 306 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed August 2026 · checked against the official Juniper Networks exam blueprint
This JNCIA-DevOps practice question is part of Courseiva's free Juniper Networks certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the JNCIA-DevOps exam.