#!/usr/bin/python # test_jinja.py # RJM Programming # January, 2016 # Thanks for ideas from https://en.wikipedia.org/wiki/Jinja_%28template_engine%29 # Usage: ./test_jinja.py (if chmod +x ./test_jinja.py) or python test_jinja.py [p1 [p2 [p3 [p4 [p5 [p6]]]]]] import sys from jinja2 import Template def main(argv): i1 = "The rain" i2 = "in Spain" i3 = "falls" i4 = "mainly" i5 = "on the" i6 = "plain." if len(sys.argv) >= 2: i1 = sys.argv[1].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') i2 = "" i3 = "" i4 = "" i5 = "" i6 = "" if len(sys.argv) >= 3: i2 = sys.argv[2].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') i3 = "" i4 = "" i5 = "" i6 = "" if len(sys.argv) >= 4: i3 = sys.argv[3].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') i4 = "" i5 = "" i6 = "" if len(sys.argv) >= 5: i4 = sys.argv[4].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') i5 = "" i6 = "" if len(sys.argv) >= 6: i5 = sys.argv[5].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') i6 = "" if len(sys.argv) >= 7: i6 = sys.argv[6].replace("%20"," ").replace('%22','"').replace('%28','(').replace('%29',')') tmpl = Template(u'''\ {{ variable|escape }} {%- for item in item_list %} {{ item }}{% if not loop.last %},{% endif %} {%- endfor %} ''') print tmpl.render( variable = 'Value with data uses Python and Jinja2 and MarkupSafe', item_list = [i1, i2, i3, i4, i5, i6] ) if __name__ == "__main__": main(sys.argv[1:])