まず結論

elif は、if の次に別の条件を調べる書き方です。
else は、どの条件にも当てはまらなかったときに実行されます。

score = 75

if score >= 80:
    print("よくできました")
elif score >= 60:
    print("合格")
else:
    print("もう少し")

この場合、合格 が表示されます。

elif は「else if」のような意味で、追加の条件を表します。

イメージで考える

ifelifelse は、上から順に並んだ分かれ道です。

モコが最初の看板を見て、当てはまらなければ次の看板へ進む。
どの看板にも当てはまらなければ、最後の else の道へ進む。

このように「上から順番に確認する」と見ると、流れが追いやすくなります。

上から順番に見る

Pythonは、上から順番に条件を見ます。

score = 90

if score >= 80:
    print("A")
elif score >= 60:
    print("B")
else:
    print("C")

最初の条件が本当なので、A が表示されます。
その下の elif は実行されません。

一度どこかに当てはまったら、そこで分かれ道は終わります。

elifは複数書ける

条件が多いときは、elif を複数書けます。

level = 2

if level == 1:
    print("初級")
elif level == 2:
    print("中級")
elif level == 3:
    print("上級")

elseは条件を書かない

else には条件を書きません。

else:
    print("どれでもない")

「ここまでの条件に当てはまらなければ」という意味だからです。

読み方のコツ

ifelifelse は分かれ道です。

もしAなら
そうでなくBなら
どれでもなければ

この日本語に置き換えると、複数条件のコードが読みやすくなります。

手を動かすミニ練習

score957540 に変えて、どの行が実行されるか見てみましょう。

score = 75

if score >= 80:
    print("よくできました")
elif score >= 60:
    print("合格")
else:
    print("もう少し")

上から順番に見て、最初に当てはまった場所だけが実行されます。