
Fernando Ocampo Giraldo
PreguntaHola, no entiendo este código…si por ejemplo number = 20 y i = 3 porque de True si 20 no es primo ?

Mauricio Galvez
Los números primos son aquellos que NO son divisibles exactamente entre dos. entonces el error es que la operación que haces es:
if number % i == 0
cuando debería ser:
if number % 2 == 0

Brenda García Ramírez
Si un número (i) del rango de 3 al número dado (number) es divisible estrictamente entre (i), no es un número primo, por eso dará falso (es el resultado de else, lo indica la identación). De lo contrario, si no es divisible entre ningún número de ese rango, será verdadero y por lo tanto primo (evaluando las condicionales anteriores). 20 es divisible entre números del rango, por eso es falso y el último return sólo se mostraría en caso de que esta condicional fuera verdadera.
El último return True es el resultado en caso de que en las condicionales anteriores se obtenga un primo.
Juan Valentin Perdomo Bonilla
la identacion, estas diciendo que el ciclo for finaliza en true, osea le dices falso y luego verdadero quedando en verdadero, si elimina un espacio al return correria exactamente el programa

Miguel Angel Ponzzi Mora
Sera porque en la ultima linea estas devolviendo True ? tendrias q mandar el codigo completo para ver todo el contexto