User and Score models
Your nested loop seems to serve the purpose of grouping the output by user.
Since Score has a link to User,
you can achieve the same effect by getting the scores ordered by the user field, like this:

def Home(request):
    scores = Score.objects.order_by('user')
    return render(request, "home.html", {'scores': scores})


And then in the template you can eliminate one for and one if:

{% for score in scores %}
{{ score.user }} -- {{ score.subject }} -- {{ score.score }} &lt;br&gt;
{% endfor %}