I mit den gleichen Elementen zusammen und alle Elementen in Unterlisten zu einer Gruppe von Unterlisten brauchen kein Element in list2
und haben ein Element in list3
Zum Beispiel:Python Link Unterlisten zusammen, dass Unterlisten kein Element in list2 haben und haben ein Element in list3
list1 = [[1,4],[4,5],[5,7],[6,7],[9,7],[10,9],[8,10],[8,11],[8,13],[13,15]]
list2 = [7,8]
list3 = [1,6,11,13]
würde ich einen Link [4,5]
und [1,4]
zusammen, da sie beide 1 gleiche Zahl enthalten und die beiden in [1,4,5]
verbinden würde und sie enthalten 1
in list3
und enthalten nicht 7
in list2
nach der Linksetzung sollte die neue Liste wie:
new_list1 = [[1,4,5],[6],[11],[13,15]]
IE: es nicht gleiche Anzahl in einer Unterliste sein soll und Ordnung ist nicht wichtig.
Ein längeres Beispiel:
list1 = [[1,4],[4,5],[5,7],[6,7],[9,7],[10,9],[8,10],[8,11],[8,13],[6,8],[20,2],[20,3],[11,14],[14,16],[13,15]]
list2 = [7,8,20]
list3 = [1,2,3,16,15]
nach der Linksetzung wäre es
new_list = [[1,4,5],[2,3],[11,14,16],[13,15]]
Wie kann dies in einer allgemeinen Weise getan werden?
EDIT Der endgültige Algorithmus der folgenden drei grundlegenden Schritte umfassen sollte:
- Entfernen Sie alle Elemente aller Teillisten von
list1
, die inlist2
- Mitglied werden alle Unterlisten enthalten sind,
list1
mit gemeinsamen Elementen - Entfernen Sie alle Unterlisten von
list1
, die keine Elemente vonlist3
enthalten
Es mir nicht klar ist, welche Listen Sie, um eine Verknüpfung um das gewünschte Ergebnis zu erhalten. In Ihrem ersten Beispiel, woher kommt das '[1,4]'? –
Sorry, ich habe es repariert, es ist in list1 – jack
Hast du irgendwas versucht? – Nuageux