• 1
    Ввод и вывод данных
    • Задачи
  • 2
    Условия
    • Задачи
  • 3
    Цикл for
    • Задачи
  • 4
    Строки
    • Задачи
  • 5
    Цикл while
    • Задачи
  • 6
    Списки
    • Задачи
  • 7
    Двумерные массивы
    • Задачи
  • 8
    Словари
    • Задачи
  • 9
    Множества
    • Задачи
  • 10
    Функции и рекурсия
    • Задачи
  • к

Занятие 3. Цикл for

Уровень сложности:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

Задача«Лишние слова»

Приближается день рождения вашего младшего брата. Вы спросили его, что он хочет в подарок. Он так обрадовался, что начал перечислять все подряд, от волнения повторяя некоторые названия по несколько раз: "Хочу машинку и еще одну машинку и куклу и робота и еще раз робота!".

Ваша задача как старшего и более технически подкованного родственника — помочь родителям составить четкий список покупок. Нужно написать программу, которая обработает восторженную речь ребенка и уберет из нее все повторы, оставив только уникальные названия подарков. Порядок в итоговом списке должен быть таким же, как в речи ребенка при первом упоминании подарка.

Техническое задание:
Напишите программу, которая принимает на вход одну строку текста, состоящую из слов, разделенных пробелами. Программа должна вывести новую строку, в которой содержатся только уникальные слова из исходной строки, сохраненные в порядке их первого появления. Для решения используйте только ввод/вывод, цикл for и условный оператор if.

Формат ввода

Одна строка (string), состоящая из слов, разделенных пробелами. Слова представляют собой названия подарков.

Формат Вывода

Одна строка (string), в которой содержатся только уникальные слова из входной строки, разделенные пробелом. Порядок слов должен соответствовать их первому появлению во входной строке.

Пример

Ввод

машинка кукла машинка робот робот кукла

Вывод

машинка кукла робот

Подсказка

Тут подсказки не будет, решай сам!

main.py
Тест 1
Тест 2
Тест 3
Тест 4
Тест 5
Тест 6
Тест 7
Тест 8
Тест 9
Тест 10
Решение разработчика
# Считываем всю строку, введенную пользователем
input_line = input()

# Разбиваем полученную строку на отдельные слова по пробелу, получаем список слов
words = input_line.split()

# Создаем пустой список, в который будем добавлять уникальные слова
unique_words = []

# Запускаем цикл, который перебирает каждое слово из списка words
for word in words:
    # Проверяем условие: если текущего слова еще нет в списке unique_words
    if word not in unique_words:
        # Если слово уникальное, добавляем его в конец списка unique_words
        unique_words.append(word)

# С помощью метода join соединяем слова из списка unique_words в одну строку,
# разделяя их пробелом, и выводим на экран
result_string = " ".join(unique_words)
print(result_string)

🎉 Поздравляем! 🎉

Ты отлично справился с задачей! Это был непростой вызов, но ты нашёл правильное решение. Ты на шаг ближе к мастерству в программировании! Продолжай в том же духе, ведь каждый пройденный этап делает тебя ещё сильнее.

AD

Реклама

red-snake blue-snake green-snake

Запускаем ваш код...

Помощник ИИ

Привет! Я твой помощник по программированию. Задавай любые вопросы по Python, я могу рассказать о функциях, методах, обьяснить то, что тебе не понятно, а так же о текущей задаче!