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

Занятие 4. строки

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

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

Задача«Безопасность данных»

Вы работаете в IT-компании, которая разрабатывает новую систему безопасного обмена сообщениями "SecureChat". Одним из ключевых требований безопасности является маскировка любой числовой информации в системных логах и отчетах для предотвращения утечки конфиденциальных данных, таких как номера телефонов, пин-коды, номера заказов или финансовая информация.

Ваша задача — написать небольшой, но важный модуль для этой системы. Этот модуль должен принимать на вход одну строку текста (например, запись из лог-файла) и заменять в ней все цифровые символы (от 0 до 9) на звездочки (*). При этом все остальные символы — буквы, знаки препинания, пробелы и т.д. — должны остаться без изменений.

Для решения этой задачи вам разрешено использовать только базовые конструкции языка: ввод и вывод данных, цикл for для перебора символов, условный оператор if-else для проверки символа и операции со строками (конкатенация). Использование встроенных функций для замены подстрок (например, .replace()) или регулярных выражений запрещено, так как цель задания — отработать именно циклы и условия.

Формат ввода

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

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

Измененная строка, в которой все цифры заменены на звездочки, а остальные символы сохранены на своих местах (string).

Пример

Ввод

Заявка #791-345 от клиента с ID 880215. Срочно обработать до 18:00.

Вывод

Заявка #***-*** от клиента с ID ******۰ Срочно обработать до **:**.

Подсказка

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

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

# Создаем пустую строку, в которую будем записывать результат.
# Мы не можем изменять исходную строку напрямую, поэтому создаем новую.
result_string = ""

# Начинаем цикл, который перебирает каждый символ (char) во входной строке (input_string).
for char in input_string:
    # Проверяем, является ли текущий символ цифрой, используя метод isdigit().
    # Этот метод возвращает True, если все символы в строке являются цифрами, и False в противном случае.
    # Так как мы проверяем по одному символу, это работает идеально.
    if char.isdigit():
        # Если это цифра, добавляем в результируючую строку звездочку.
        result_string += "*"
    else:
        # Если это любой другой символ (буква, пробел, знак препинания и т.д.),
        # добавляем его в результирующую строку без изменений.
        result_string += char

# После того как цикл завершился и все символы были обработаны,
# выводим на экран итоговую строку с замаскированными данными.
print(result_string)

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

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

AD

Реклама

red-snake blue-snake green-snake

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

Помощник ИИ

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