• 1
    Entrée et sortie
    • Tâches
  • 2
    Conditions
    • Tâches
  • 3
    Boucle for
    • Tâches
  • 4
    Chaînes
    • Tâches
  • 5
    Boucle while
    • Tâches
  • 6
    Listes
    • Tâches
  • 7
    Tableaux 2D
    • Tâches
  • 8
    Dictionnaires
    • Tâches
  • 9
    Ensembles
    • Tâches
  • 10
    Fonctions et récursion
    • Tâches
  • к

Leçon 4. Lines

Difficulté :

Exercice«Sécurité des données»

💻 Python

Vous travaillez dans une entreprise informatique qui développe un nouveau système de messagerie sécurisée "SecureChat". L'une des exigences de sécurité clés est de masquer toute information numérique dans les journaux système et les rapports afin d'empêcher la fuite de données confidentielles, telles que les numéros de téléphone, les codes PIN, les commandes ou les informations financières.

Votre tâche — Écrire un module petit mais important pour ce système. Ce module doit prendre une ligne de texte (par exemple, un enregistrement provenant d'un fichier journal) et remplacer tous les caractères numériques (de 0 à 9) par des étoiles (*). De plus, tous les autres symboles — lettres, signes de ponctuation, espaces, etc. — doivent rester inchangés.

Pour résoudre ce problème, vous êtes autorisé à utiliser uniquement les constructions de base du langage : entrée et sortie de données, boucle for pour parcourir les caractères, opérateur conditionnel if-else pour vérifier le caractère, et opérations sur les chaînes (concaténation). L'utilisation de fonctions intégrées pour remplacer les caractères (par exemple, .replace()) ou d'expressions régulières est interdite, car le but de la tâche est de travailler précisément avec les boucles et les conditions.

Format d entrée

Une ligne de texte pouvant contenir toute combinaison de lettres (latines et cyrilliques), de chiffres, d'espaces et de caractères spéciaux (chaîne de caractères).

Format de sortie

Une ligne modifiée, dans laquelle tous les nombres sont remplacés par des étoiles, et le reste des caractères sont conservés à leur place (String).

Exemple

Entrée

Application #791-345 du client avec l'ID 880215. Traiter d'urgence avant 18h00.

Sortie

Application #***-*** du client avec l'ID ****** ۰ Traiter d'urgence jusqu'à **: **.

Indice

There will be no clue here, decide for yourself!

main.py
Test 1
Test 2
Test 3
Test 4
Test 5
Test 6
Test 7
Test 8
Test 9
Test 10
Solution du développeur
# Получаем исходную строку от пользователя для обработки.
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)

🎉 Félicitations ! 🎉

Tu as brillamment résolu la tâche ! C était difficile, mais tu as trouvé la bonne solution. Tu es encore plus proche de maîtriser la programmation ! Continue ainsi.

AD

Publicité

red-snake blue-snake green-snake

Exécution de votre code...

Assistant IA

Bonjour ! Je suis ton assistant de programmation. Pose moi toutes tes questions sur Python — je peux t expliquer les fonctions, les méthodes et t aider avec la tâche en cours !