Ich versuche Listenkomprehensionen zu lernen, und ich habe diese triviales Beispiel erstellt, in dem ich die Saiten in die Liste a
drucken möchten, die enthalten entweder die Worte fox
oder rabbit
während diejenigen ohne die red
enthalten oder blue
. So wie es aussieht, funktioniert mein Beispiel, aber ich möchte wissen, ob es zu einem einzigen Verständnis kondensiert werden kann, was die Notwendigkeit von Mengenoperationen negiert.Python Nested Listenkomprehension auf mehreren Listen
a = ["the red fox", "the blue fox", "the green fox",
"the yellow fox", "the red rabbit", "the yellow rabbit"]
b = ["fox", "rabbit"]
c = ["red", "blue"]
d = set([e for e in a for f in b if f in e]) - set([e for e in a for f in c if f in e])
for d in d:
print d