
Python.У цьому завданні ти навчишся «перевертати» рядок та прибирати зайві символи. Створи
функцію is_werewolf, яка приймає рядок target і повертає True, якщо це перевертень, або False — якщо ні. пример is_werewolf("rotator") # True (rotator --> rotator) is_werewolf("home") # False (home --> emoh) is_werewolf("red rum sir is murder") # True — spaces are ignored is_werewolf("Racecar") # True — регістр ігнорується is_werewolf("eva, can i see bees in a cave") # True — spaces and punctuation are ignored

Ответы на вопрос

Ответ:
Ось приклад реалізації функції is_werewolf у Python, яка перевіряє, чи є заданий рядок перевернутим (тобто, чи він читається зліва направо та справа наліво однаково):
def is_werewolf(target):
target = target.lower().replace(" ", "") # перетворити рядок на малий регістр та видалити пробіли
return target == target[::-1] # порівняти рядок з його перевернутим варіантом
Ця функція спочатку перетворює рядок на малий регістр та видаляє з нього всі пробіли, щоб отримати чистий текст, без зайвих символів. Потім вона порівнює цей текст з його перевернутим варіантом, який отримується за допомогою синтаксису зрізу (slice) target[::-1].
print(is_werewolf("A man a plan a canal Panama")) # повинно повернути True
print(is_werewolf("Python is cool")) # повинно повернути False
У першому випадку рядок "A man a plan a canal Panama" є перевернутим, тому функція повертає True. У другому випадку рядок "Python is cool" не є перевернутим, тому функція повертає False.



Щоб створити функцію is_werewolf
, яка перевіряє, чи є рядок паліндромом (перевертнем), та ігнорує пробіли, регістр і пунктуацію, вам потрібно спершу прибрати зайві символи та привести рядок до одного регістру, а потім порівняти його з його перевернутим виглядом. Ось варіант реалізації цієї функції:
pythonimport string
def is_werewolf(target):
# Прибрати пробіли та пунктуацію
target = ''.join(char.lower() for char in target if char.isalnum())
# Порівняти рядок з його перевернутим виглядом
return target == target[::-1]
# Приклади використання
print(is_werewolf("rotator")) # True
print(is_werewolf("home")) # False
print(is_werewolf("red rum sir is murder")) # True
print(is_werewolf("Racecar")) # True
print(is_werewolf("eva, can i see bees in a cave")) # True
Ця функція перевіряє, чи є рядок target
паліндромом, ігноруючи регістр, пробіли та пунктуацію, як показано у ваших прикладах.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili