Verifique se a string é um palíndromo

Um palíndromo é uma palavra, frase, número ou outra sequência de caracteres que pode ser lida da mesma forma de trás para frente ou da frente para trás, como madam ou kayak.

Escreva uma função que receba uma string e determine se ela é ou não um palíndromo. A função deve retornar um booleano (um valor True ou False).

Exemplos

is_palindrome("Neuquen") ➞ True

is_palindrome("Not a palindrome") ➞ False

is_palindrome("A man, a plan, a cat, a ham, a yak, a yam, a hat, a canal-Panama!") ➞ True

Observações

  • Não deve diferenciar maiúsculas de minúsculas.
  • Caracteres especiais (pontuação ou espaços) devem ser ignorados.