Введение
Палиндромом называется слово, фраза, число или другая последовательность символов, которая читается одинаково в обоих направлениях. Например, "racecar" - это палиндром, потому что при обратном чтении оно по-прежнему пишется как "racecar". В этом испытании вы напишете функцию, которая проверяет, является ли заданная строка палиндромом.
Палиндром
Напишите функцию palindrome(s), которая принимает строку s в качестве единственного параметра и возвращает True, если s является палиндромом, и False в противном случае. Ваша функция должна игнорировать регистр и неалфавитно-цифровые символы при проверке на палиндром.
Для решения этой проблемы вы можете следовать следующим шагам:
- Используйте
str.lower(), чтобы преобразовать строку в нижний регистр. - Используйте
re.sub(), чтобы удалить все неалфавитно-цифровые символы из строки. - Сравните полученную строку с ее обратной с использованием срезов.
from re import sub
def palindrome(s):
s = sub('[\W_]', '', s.lower())
return s == s[::-1]
palindrome('taco cat') ## True
Резюме
В этом испытании вы узнали, как проверить, является ли заданная строка палиндромом. Вы использовали str.lower() и re.sub(), чтобы преобразовать строку в нижний регистр и удалить неалфавитно-цифровые символы, а затем сравнили полученную строку с ее обратной с использованием срезов.