Verificar si un número es palíndromo en Python
"En los números también existe la simetría, y los palíndromos nos muestran que la lógica puede ser tan elegante como un reflejo perfecto."
Un número palíndromo es aquel que se lee igual de izquierda a derecha y de derecha a izquierda.
Ejemplos de números palíndromos:
121
12321
4004
En este tutorial aprenderás a comprobar si un número es palíndromo en Python usando varios enfoques.
Método 1: Convertir el número a cadena
La forma más sencilla es convertir el número a cadena y compararlo con su versión invertida.
def es_palindromo_numero(n: int) -> bool:
return str(n) == str(n)[::-1]
print(es_palindromo_numero(121)) # True
print(es_palindromo_numero(12345)) # False
print(es_palindromo_numero(4004)) # True
Ventajas:
- Fácil de entender.
- Muy usado en entrevistas de programación.
Método 2: Usando operaciones matemáticas
Si no quieres convertir a cadena, puedes invertir el número con divisiones y módulos.
def es_palindromo_numero_matematico(n: int) -> bool:
original = n
invertido = 0
while n > 0:
invertido = invertido * 10 + n % 10
n //= 10
return original == invertido
print(es_palindromo_numero_matematico(12321)) # True
print(es_palindromo_numero_matematico(12345)) # False
Ventajas:
- Evita conversiones a cadena.
- Útil cuando se busca eficiencia en algoritmos.
Método 3: Usando slicing en combinación con strings
Una versión reducida del primer método, ideal para casos simples.
print(str(12321) == str(12321)[::-1]) # True
Consideraciones
- Los números negativos normalmente no se consideran palíndromos, ya que el signo
-
rompe la simetría. - En problemas de entrevistas (ej. LeetCode), los ceros iniciales también suelen invalidar el palíndromo (ejemplo:
010
no es válido). - Conviene elegir el método según si se busca simplicidad (strings) o optimización (matemáticas).
Verificar si un número es palíndromo en Python es un ejercicio muy común en la práctica de algoritmos y entrevistas técnicas.
- Método rápido: conversión a string.
- Método matemático: invertir el número sin cadenas.
- Uso práctico: reforzar conceptos de manipulación de datos y estructuras de control.
Con estos ejemplos ya puedes detectar palíndromos en números de manera sencilla y eficiente.
También te puede interesar: