Створіть інструмент на Python
Тепер, коли у вашого чат-бота є інструменти з історичних подій і Wikipedia, адміністрація школи також просить додати граматичний інструмент для курсу англійської мови. Вони хочуть, щоб ви створили перевірку на паліндром, яка визначає, чи читається введена фраза або слово однаково, якщо набрати її у зворотному порядку. Учні мають мати змогу використовувати цей інструмент, щоб перевіряти різні рядки на паліндромність, наприклад «level» або «never odd or even», які в обох випадках читаються однаково задом наперед.
Ця вправа є частиною курсу
Проєктування агентних систем з LangChain
Інструкції до вправи
- Вкажіть тип вхідних даних для інструменту як рядок.
- Перетворіть символи на малі за допомогою
.lower(), видаляючи всі неалфавітно-цифрові символи за допомогою.isalnum(). - Щоб визначити, чи є текст паліндромом, перевірте, чи збігається очищений текст із його зворотною версією.
- Заповніть пропуски в блоці
elseпочатковим введенням, щоб повернути відповідне повідомлення для непаліндромів.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
@tool
# Set input format to string
def palindrome_checker(text: ____) -> str:
"""Check if a word or phrase is a palindrome."""
# Remove non-alphanumeric characters and convert to lowercase
cleaned_text = ''.join(char.____() for char in ____ if char.____())
# Set up if-else block to check reversed text against original text
if cleaned_text == ____[::-1]:
return f"The phrase or word '{____}' is a palindrome."
else:
# Print an alternative statement if text is not a palindrome
____ f"The phrase or word '{____}' is not a palindrome."