Bueno para mi lo veo tan claro como el agua. Mira un palindromo es aquella palabra que se lee igual de izquierda a derecha que de derecha a izquierda. Ejemplos:
Código:
Palabra -> Es palindromo?
Ana -> Si
Anita -> No
abcba -> Si
aa -> Si
ab -> No
abcda -> No
El caso es que tu código se detiene a la primera coincidencia, por que 0 == -0 ejemplo:
Código:
cadena = 'abcda'
if cadena[0] == cadena[-0]: #esto siempre es verdadero, siempre regresa True
Lo mas simple que se me ocurre que es revertir la cadena y checar si es igual a la original. No del todo eficiente, pero es lo mas fácil de hacer.