J'ai une série telle que: Je veux imprimer les éléments communs dans une liste p> . 'd aime savoir quelle identité ils faisaient partie de
Sortie: P> b: 1,2
c: 1,2,3
d: 1,2,3
e: 1,2
3 Réponses :
Bienvenue sur Stackoverflow.
Si je comprends votre problème, vous pouvez tirer parti d'un sorties: p> Est-ce que cela répond à votre question? P> P> defaultDict code> pour ceci: p>
Je pense que vous avez besoin d'un niveau de boucle de plus pour obtenir les personnages individuels.
Il a dit «des articles communs», je suppose une liste et je comparais ses articles. Si comparer des caractères moniques dans des éléments de chaîne, corrigez une troisième boucle sur chaque caractère de la chaîne code> d'élément code> est requise.
Si vous créez un dictionnaire mappant les index sur des listes de caractères, vous pouvez obtenir les deux parties de votre réponse: éléments qui apparaissent dans plusieurs listes sont trouvés en regardant: p> Vous pouvez indexer directement dans la dicte Pour trouver les index, ils font partie de: p> d code> sera un dictionnaire comme: < / p>
Essayons une approche de comptage, car nous voulons une bonne complexité du temps.
b: [1, 2] c: [1, 2, 3] d: [1, 2, 3] e: [1, 2]
Quelques notes: 1) Vous n'avez presque jamais besoin d'incrémenter manuellement un champ d'identification comme ça. Il suffit de faire la boucle pour list_id, lst in énumumerate ([l1, l2, l3], 1): code> et vous pouvez supprimer l'initialisation explicite de
list_id code> sur
0 code> et l'incrément explicite à la fin de chaque boucle. 2) N'utilisez pas Bare
sauf code> s; Vous vous attendez à un
KeyError code>, attrape uniquement que vous n'ignorez pas
typeError code> S,
clavierInterrupter code> s, etc. ou simplement utiliser un
collections.defaultDict (liste) code> Vous n'avez donc pas besoin de
Essayez code> /
sauf code> du tout et peut simplement faire de manière inconditionnelle
compter [caractère] .append (list_id) code>.
1) formater votre entrée de manière appropriée; 2) Postez votre code initial
Pouvez-vous fournir plus de détails ou d'exemples?
c code> et
d code> apparaît dans chaque liste, mais
b code> et
e code> seulement dans 2 sur 3, donc ce n'est pas clair dans Quelle quantité de liste différente donnée doit sembler vous intéresser. Disons que nous avons 100 listes, sera un élément apparaissant dans 2 listes intéressants pour vous ou non? Si ce n'est pas combien d'apparences dont vous avez besoin?