• Предмет: Информатика
  • Автор: aaizirek499
  • Вопрос задан 2 года назад

Напишите функцию, которая определяет есть ли в переданной ей строке один из этих символов №, #, %, !, $, @, &, *

Функция должна вернуть значение типа Bool

МОЖЕТЕ ПИСАТ ОТВЕТ С ПРИМЕРОМ И ОБЯСНЕНИЕМ И ПО ШАГАМ


trueberry17: Вот простенький ответ через лямбду: ( Функция check() )
check = lambda text: True in [x in '№#%!$@&*' for x in str(text)]

Ответы

Ответ дал: trueberry17
1

P.S : Если недостаточно хорошо объяснила или код недостаточно хорош - обращайся, порешаем.

Python Code:

def check(text):

   return True in [x in '№#%!$@&*' for x in str(text)]

   # Вернёт True если есть

   # Вернёт False если нет

# Проверка

print(check('Есть ли в этом тексте №#%!$@&*'))

print(check('А в этом?'))

Объяснение.

Если разбирать код, выглядит он как-то так:

def check(text):

# - Создание функции check()

   for x in str(text):

   # - Для x(допустим) будет присвоен по очереди каждый символ строки

       if x in '№#%!$@&*':

       # - Если x есть в перечисленных символах

           return True

           # - Возвращать True

   return False

   # - Если код не вернул True и дошёл до этой строки, возвращает False

Приложения:

trueberry17: При копировании кода прошу сверить пробелы с нужным скрином, ибо сайт иногда шакалит
aaizirek499: спасибо за ответ ты лучший
aaizirek499: как надо делать эти символы одельными
aaizirek499: например: надо найти ест ли символ в этой строке
aaizirek499: "дай$мне"
trueberry17: Не поняла, надо разделить текст по этим символам?
trueberry17: Если имелось ввиду "Как вызвать функцию", то после самой функции/кода просто напишите:
print(check("дай$мне")) # --- Выведет на экран True, так как есть знак доллара
aaizirek499: у меня не показывает
aaizirek499: все показал спасибо огромное
Вас заинтересует