備忘録です。
Pythonで2つのリストをzipしfor文で取り出すということがあると思いますが、今回はそれをFlaskで実行する方法についての備忘録です。

Zipはhtml側で使えず
ということでapp.pyの方でzip化して渡すとうまく行きました。
@app.route('/<int:id>/showproject', methods=['GET'])
def showproject(id):
project = Project.query.get(id)
if request.method == 'GET':
li1 =['a', 'b', 'c', 'd', 'e']
li2 = ['佐藤', '田中', '鈴木', '斎藤', '吉竹']
return render_template('showproject.html', project=project, l=zip(li, li2))
引数として渡す際に、zipし変数に格納。
{% extends 'base.html' %}
{% block content %}
<div class="container">
<a href="/{{project.id}}/updateproject" role="button" class="btn btn-primary float-end">編集</a><h1 class="mb-3">プロジェクト詳細</h1>
<div class="mb-3">
<p class="border-bottom">タイトル</p>
<h4>{{project.projecttitle}}</h4>
</div>
<div>
<p class="border-bottom">概要</p>
<p>{{project.overview}}</p>
</div>
<div>
<p class="border-bottom">実現したいことリスト</p>
<ul class="list-group">
{% for elem, status in l %}
<!-- Noneの行は表示しない方法 -->
{% if elem %}
<li class="list-group-item" style="{% if status == 1 %}background-color:#8E8E8E;{% else %}background-color:#FFFFFF;{% endif%}">{{elem}}</li>
{% endif %}
{% endfor %}
</ul>
</div>
</div>
{% endblock %}
引数で渡されたlという変数を{% for elem, status in l %}この形で使用します。lはzipされているので、2つの値が出てきます。それをelemとstatusという変数でこのコードでは拾っている感じです。