Ah, good point. I can't speak for him but my guess would be in order to make minimal changes to his code as he was very much on the right path.
Additionally it makes sense to use a for/else as if the function evaluated to the end of the third if,
if x > 2 it would return nothing rather than True since it did indeed find a prime number.
I can see the other alternative to be using a boolean flag variable, initiating it as True, then flipping it to False if
x % i == 0 evaluates to True. Then, at the end of the whole function, return the flag variable, that way there will always be something returned from the function.
A bit lengthy, but that is my take on it. Also, I understand this is probably an enrichment exercise for the OP and future readers rather than for your own sake.