Вопрос задан 28.11.2023 в 08:45. Предмет Информатика. Спрашивает Орешников Тёма.

Найти первое слово. Пайтон. Напишите функцию first_word, которая в переданной строке найдет ее

первое слово. При решении задачи обратите внимание на следующие моменты: В строке могут встречаются точки и запятые Строка может начинаться с буквы или, к примеру, с пробела или точки В слове может быть апостроф и он является частью слова Весь текст может быть представлен только одним словом и все Входные параметры: Строка. Выходные параметры: Строка. Пример: first_word("Hello world") == "Hello" first_word("greetings, friends") == "greetings" first_word("don't touch it") == "don't" first_word("... and so on ...") == "and" first_word("hi") == "hi" first_word("Hello.World") == "Hello"
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Мельников Владимир.

Ответ:

def first_word(inp_str):

   tmp_str = inp_str.replace(',', '').replace('.', ' ').strip().split()

   return tmp_str[0] if tmp_str else False

Объяснение:

Как вариант, используя регулярные выражения:

import re


def first_word(inp_str):

   tmp_str = re.sub(r'[.,]', ' ', inp_str).strip().split()

   return tmp_str[0] if tmp_str else False

Из условия неоднозначно утверждение по поводу буквы в начале строки, является ли она полноценным словом, по хорошему, конечно, да, однако вот небольшое исправление, которое не будет определять букву, как слово:

import re

def first_word(inp_str):

   tmp_str = re.sub(r'[.,]', ' ', inp_str).strip().split()

   if tmp_str:

       for i in tmp_str:

           if len(i) == 1:

               continue

           return i

   return False

Удачи

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи вам нужно написать функцию `first_word`, которая принимает строку в качестве входного параметра и возвращает ее первое слово. Ниже приведен пример кода на языке Python:

```python def first_word(s): # Используем метод split() для разделения строки на слова words = s.split()

# Проходим по словам и убираем лишние символы в начале каждого слова for i in range(len(words)): # Используем метод isalpha() для проверки, что символы в слове являются буквами word = ''.join(filter(str.isalpha, words[i]))

# Если слово не пустое, то возвращаем его if word: return word

# Примеры использования print(first_word("Hello world")) # "Hello" print(first_word("greetings, friends")) # "greetings" print(first_word("don't touch it")) # "don't" print(first_word("... and so on ...")) # "and" print(first_word("hi")) # "hi" print(first_word("Hello.World")) # "Hello" ```

Эта функция разбивает входную строку на слова с использованием метода `split()`, затем проходит по каждому слову, используя метод `isalpha()` для удаления лишних символов. Если слово не пустое, то оно возвращается как результат функции.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос