Controllo palindromo Python

Controlla se una stringa o un numero è palindromo (legge allo stesso modo all'indietro e in avanti) usando l'affettamento Python.

Prova nell'editor

Panoramica

Un palindromo è una sequenza di caratteri o cifre che si legge in modo identico in entrambe le direzioni, ignorando spazi, punteggiatura e maiuscole.

Le stringhe Python supportano l'affettamento, che ci consente di creare una copia invertita utilizzando `[::-1]`. Ciò rende il controllo palindromo estremamente conciso.

Per i numeri, possiamo prima convertire il valore in una stringa o utilizzare cicli matematici per ricostruire le cifre in ordine inverso.

Codice e output di esecuzione

Verifica di più stringhe alfanumeriche e valori numerici per la simmetria palindroma.

palindrome.py
Prova nell'editor
def is_palindrome(val):
    s = str(val).lower().replace(" ", "")
    return s == s[::-1]

test_inputs = [121, 12321, "radar", "Python", "A nut for a jar of tuna"]
for item in test_inputs:
    status = "Palindrome" if is_palindrome(item) else "Not Palindrome"
    print(f"'{item}' -> {status}")
Uscita terminale
'121' -> Palindrome
'12321' -> Palindrome
'radar' -> Palindrome
'Python' -> Not Palindrome
'A nut for a jar of tuna' -> Palindrome

Implementazione passo dopo passo

  • Sviluppo di puzzle di parole e giochi di testo
  • Algoritmi di corrispondenza di pattern di sequenze di DNA
  • Sfide di screening del colloquio tecnico

Domande frequenti

Come puoi controllare i palindromi senza convertire i numeri in stringhe?

Puoi estrarre le cifre da destra a sinistra utilizzando % e //, ricostruire il numero invertito e verificare se corrisponde all'originale.

Argomenti correlati