It’s consistent with try…else and if…else so I actually think it’s ok.
In a for loop, the else clause only runs if the loop successfully completes (isn't broken), so the else in for-else means the total opposite of what it means in every other pattern.
I think it would make a lot more sense if it were replaced with "done" or "upon" or something else that communicates how it works.
Edit: This is wrong. See replies.
However, that's exactly how it doesn't work and that's my point. The else clause is only ran if the loop DOESN'T break.