Supprimer des éléments (clés et valeurs) d'un dictionnaire s'ils sont présents dans un autre dictionnaire

Sayanta Seth

J'ai deux dictionnaires Python:

A = {1: 27, 3: 41, 7: 26, 11: 32, 12: 23, 14: 23, 15: 37, 18: 27, 21: 35, 23: 12, 25: 33, 26: 7, 27: 1, 29: 14, 32: 11, 33: 25, 35: 21, 36: 27, 37: 15, 38: 25, 39: 23, 41: 3, 44: 27}

et

B = {1: 27, 3: 41, 7: 26, 11: 32, 12: 23, 15: 37, 18: 27, 21: 35, 26: 7, 29: 14, 32: 11, 33: 25, 35: 21, 36: 27, 39: 23, 41: 3, 44: 27}

Je souhaite supprimer toutes les valeurs numériques présentes dans le dictionnaire B du dictionnaire A. Par cela, je veux dire si un nombre est présent dans le dictionnaire B en tant que clé ou valeur, il doit être totalement supprimé du dictionnaire A de ses clés ou valeurs (même si le nombre est présent plusieurs fois dans l'une des valeurs).

Donc, ma sortie souhaitée devrait être

38

comme le reste de tous les nombres sont présents dans le dictionnaire B et le dictionnaire A, mais 38 est unique dans B (en regardant dans les yeux).

Jusqu'à présent, j'ai essayé ce qui suit:

C = {k: v for k, v in A.items() if k not in B}

Cela me donne:

C = {14: 23, 23: 12, 25: 33, 27: 1, 37: 15, 38: 25}

De toute évidence, ce n'est pas ce que je veux. J'ai aussi essayé:

C = dict(A.items() - B.items())

Cela n'a pas fonctionné non plus.

Toute aide serait extrêmement appréciée.

Pakpe

Vous devez utiliser des ensembles. Les ensembles n'ont pas de doublons. Vous pouvez trouver l'union, l'intersection et la différence de deux ensembles. Le code ci-dessous transforme les clés et les valeurs de chaque dictionnaire en ensembles et crée une union de clés et de valeurs. Ensuite, il trouve la différence entre deux ensembles.

a_set = set(A.keys()).union(set(A.values()))
b_set = set(B.keys()).union(set(B.values()))
print(a_set.difference(b_set))

#output:{38}

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

TOP liste

  1. 1

    Microsoft.WebApplication.targets

  2. 2

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  3. 3

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  4. 4

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  5. 5

    Passer la taille d'un tableau 2D à une fonction ?

  6. 6

    Exporter la table de l'arborescence vers CSV avec mise en forme

  7. 7

    Impossible d'accéder à la vue personnalisée pendant le test de l'interface utilisateur dans XCode

  8. 8

    Créer un système Buzzer à l'aide de python

  9. 9

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  10. 10

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  11. 11

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  12. 12

    CSS: before ne fonctionne pas sur certains éléments,: after fonctionne très bien

  13. 13

    Conversion double en BigDecimal en Java

  14. 14

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  15. 15

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  16. 16

    Comment vérifier si un utilisateur spécifique a un rôle? Discord js

  17. 17

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  18. 18

    Existe-t-il un moyen de voir si mon bot est hors ligne ?

  19. 19

    comment afficher un bouton au-dessus d'un autre élément ?

  20. 20

    Comment activer le message Pylint "too-many-locals" dans VS Code?

  21. 21

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

chaudétiquette

Archive