Como entrar neste código para encontrar números primos, is_prime (9) retorna True? [duplicado

Esta pergunta já tem uma resposta aqui:

Programa que verifica se um número é o número primo 5 respostas
def is_prime(x):
  if x < 2:
    return False
  else:
    for n in range(2, x):
      if x % n == 0:
        return False
      else:
        return True 

print is_prime(9) retornaTrue ao invés deFalse.

Eu não entendo direito.

Orange (2,9) inclui esta lista:2,3,4,5,6,7,8

and9 % 3 == 0, Então como é que eu não entendoFalse como a resposta dessa função?

questionAnswers(2)

yourAnswerToTheQuestion