Back to questions
OZON
Middle
5
Задача: Палиндром Напишите функцию is_palindrome(s: str) -> bool, которая проверяет, является ли строка палиндромом (читается одинаково слева направо и справа налево). При этом нужно игнорировать пробелы, знаки препинания и регистр букв. Примеры: - is_palindrome("racecar") → True - is_palindrome("A man, a plan, a canal: Panama") → True - is_palindrome("race a car") → False
Companies where asked
Answer from AI
sobes.tech AI
python def is_palindrome(s: str) -> bool: import re # Убираем все, кроме букв и цифр, и приводим к нижнему регистру cleaned = re.sub(r'[^a-zA-Z0-9]', '', s).lower() # Проверяем равенство строки и её обратного варианта return cleaned == cleaned[::-1]
Примеры:
print(is_palindrome("racecar")) # True print(is_palindrome("A man, a plan, a canal: Panama")) # True print(is_palindrome("race a car")) # False