Ich habe eine Liste von SätzenPythonic Art und Weise zu überprüfen, ob ein Satz in der Liste in einem anderen Satz ist
lst = [s1, s2, s3]
wo
s1 = set([1, 2, 3])
s2 = set([2, 3, 4])
s3 = set([2, 4, 6])
und ich habe einen anderen Satz
set1 = set([1, 2, 3, 5])
Also wenn ich lst - set1
mache, sollte ich set()
bekommen. Eine Möglichkeit, dies zu tun, besteht darin, jedes Element von lst
durchzugehen und dann mit set1
minus zu machen. Ich möchte wissen, ob es eine pythonische Art gibt, dies zu tun.
Beispiel:
s1 = set([1, 2, 3, 4])
s2 = set([2, 3, 4])
s3 = set([2, 4, 6])
lst = [s1,s2,s3]
set1 = set([1, 2, 3, 5, 4])
Also muß ich überprüfen, ob eine des Elements in der Liste lst
vorhanden ist in set1
unklar, was die erwartete Ausgabe ist –
'lst - set1' ist einfach undefiniert. Sie können nicht zwischen "Liste" und "Menge" unterscheiden. Möchten Sie eine * element weise * Differenz, d. H. '[Teilmenge - set1 für Teilmenge in lst]' '? Oder sollte die gesamte Liste als Flat-Set interpretiert werden? – MisterMiyagi
Sollte 'lst - set1' nicht' {4,6} 'sein? –