Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 05-06-2021 10:21:34

saske
Invité

dictionnaire sur python

Bonjour , j'ai un exercice à faire sur python dont le but est de creer une fonction permettant de supprimer les clés contenant des information à charactere personnel lors d'un affichage
par exemple un dictionnaire contenant les information utilisateurs pourait avoir la forme suivante :
{
    'age': 22,
    'firstname': 'Jean-Cédric'
    'last_connection': 'yesterday',
    'email': 'ilovemyfirstname@caramail.fr'
}
Les champs à enlever seront les suivants : ,-firstname,-lastname,-email

ma fonction est la suivante

def anonymise_data(user_information) :
    if 'firsname' in user_information:
        user_information.plot("firstname")
    if 'lastname' in user_information:
        user_information.plot('lastname')
    if 'email' in user_information:
        user_information.plot('email')
    return user_information

mais elle ne marche pas , une idéé de pourquoi?

#2 05-06-2021 12:11:13

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 17 385

Re : dictionnaire sur python

Bonjour,

plot ? dans les dictionnaires ? Avec matplotlib, oui, mais dans les dicos après recherche rapide, je n'ai pas trouvé...
Je connais 2 méthodes : pop et del

Ça, ça marche :

def anonymise_data(user_informations) :
    Del_infos=['firstname','lastname','email']
    for cle in Del_infos:
        if cle in user_informations:
            del user_informations[cle]     
    return user_informations

user_informations={
    'age': 22,
    'firstname': 'Jean-Cédric',
    'last_connection': 'yesterday',
    'email': 'ilovemyfirstname@caramail.fr'
}
print(anonymise_data(user_informations))

Sortie :

{'age': 22, 'last_connection': 'yesterday'}

Dans ce que tu as posté, il y a deux erreurs :
1. Dans ton dictionnaire, il manque une virgule
2. dans ta fonction tu as écrit  firsname" : il manque le t.

Plutôt que if, if, if à répétition, j'ai plutôt créé une liste des clés supprimables, puis j'ai itéré sur cette liste : cela permet de d'avoir potentiellement une dizaine (et plus) de clés supprimables...

@+

Hors ligne

#3 05-06-2021 12:54:56

saske
Invité

Re : dictionnaire sur python

Bonjour, oui étourderie de ma part c'est bien pop et non plot que je voulais mettre et effectivement votre code est beaucoup moins répétitif et plus performant. Merci :)

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
cinquante quatre plus trente sept
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums