Aún y cuando este algoritmo se peude optimizar, el recorrer los numeros de la lista ofrece seguridad.. aqui les dejo el codigo, pero lo más importante no es el lenguaje, sino entender lo que es la programación
# -*- coding: utf-8 -*-
def Primo(num):
if num < 2:
return False
elif num == 2:
return True
elif num > 2 and num % 2 == 0:
return False
else:
for i in range(3, num):
if num % i == 0:
return False
return True
def run():
num = int(raw_input('Escribe un numero: '))
result = Primo(num)
if result is True:
print('Es primo')
else:
print('No es primo')
if __name__ == '__main__':
run()