Python. Не работает. Помогите, пожалуйста

Рейтинг: -4Ответов: 1Опубликовано: 08.02.2023

Необходимо решить с использованием методов строк.

Дана строка. Выясните, какое слово встречается раньше в строке – на букву "K" или на букву "I". Предполагается, что в строке есть слова, начинающиеся как с буквы "K", так и с буквы "I".

Входные данные

Строка, состоящая из заглавных латинских букв, пробелов и знаков препинания.

Выходные данные

Выведите первое слово, начинающееся на букву "K", если оно стоит раньше первого слово, начинающегося на букву "I", или первое слово, начинающееся на букву "I", если оно стоит раньше первого слово, начинающегося на букву "K".

Пример

Входные данные

KATE COOKS IN THE KITCHEN.

Выходные данные

KATE

str = input().split()
for i in str:
        if i[0] == "K":
            s = i
            break
        elif i[0] == "I":
            s = i
            break
print(s)

Ответы

▲ 0Принят

Вот та же логика, но с использованием метода startswith, который проверяет, что строка начинается с указанной подстроки:

words = input().split()
for w in words:
    if w.startswith("K"):
        print(w)
        break
    elif w.startswith("I"):
        print(w)
        break

или вот более лаконичный вариант:

words = input().split()

result = next(
    w for w in words
    if w.startswith("K") or w.startswith("I")
)

print(result)