Middle
Εργασία: Παλίνδρο Γράψτε μια συνάρτηση 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
sobes.tech AI
Απάντηση από 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