-2
votes

Comment compter combien de fois une valeur spécifique dans un dictionnaire de dictionnaires à Python 3

Je sais qu'il doit y avoir une solution très simple à cette question, mais je suis nouveau avec Python et je ne peux pas comprendre comment le faire.

Tout ce que je veux simplement faire est de compter combien de fois une valeur particulière apparaît dans cette Dictionnaire, par exemple, combien d'hommes il y a. xxx

toute aide est très appréciée!


0 commentaires

3 Réponses :


2
votes

Pour votre exemple, vous avez des candidats et leurs données. Les données que vous vérifient sont leur sexe, de sorte que le code ci-dessous accomplira cela.

amount = 0                                       # amount of people matching condition
for applicant in people.values():                # looping through all applicants
    if applicant.get('Gender', False) == 'Male': # checks if applicant['Gender'] is 'Male'
                                                 # note it will return False if ['Gender'] wasn't set
        amount += 1                              # adds matching people to amount


3 commentaires

Retourner "Femme" au lieu de FALSE fonctionnerait de la même manière, et soyez un peu moins de jarre que le fausse == "masculine" .


C'est vrai, mais simplement au cas où l'OP a voulu changer les informations vérifiées par "Femme", cela ne fera rien "inattendu".


Aucun problème. Passez une bonne journée: D



1
votes

Ceci est une fonction pour compter le nombre d'occurrences d'une valeur donnée à l'intérieur d'un dictionnaire: xxx

alors vous pouvez l'utiliser comme suit: xxx


0 commentaires

1
votes

Je suggérerais de refactoriser votre logique un peu à utiliser une liste de dict.

[applicant for applicant in people if applicant['Gender'] == 'Male']


1 commentaires

Donc, [Demandeur du demandeur dans les personnes.Values ​​() si le demandeur [«genre»] == 'mâle »] . Passer à partir d'un dict à une liste sans savoir pourquoi un dict a été utilisé en premier lieu n'est pas particulièrement utile.