Ich habe den folgenden Code:Python, die Suche nach einzigartigen Worten in mehreren Listen
a= ['hello','how','are','hello','you']
b= ['hello','how','you','today']
len_b=len(b)
for word in a:
count=0
while count < len_b:
if word == b[count]:
a.remove(word)
break
else:
count=count+1
print a
Das Ziel ist, dass es im Grunde gibt (Inhalt der Liste a) - (Inhalt der Liste b) so das gewünschte Ergebnis in dieser Fall wäre a = [ ‚sind‘, ‚hallo‘]
sein, aber wenn ich meinen Code ausführen bekomme ich a = [ ‚wie‘, ‚sind‘, ‚Sie‘]
kann jemand entweder Punkt was ist falsch mit meiner Umsetzung, oder gibt es einen anderen besseren Weg, um das zu lösen?
Ändern Sie nicht die Länge einer Liste, während Sie darüber iterieren. Auch wenn die Reihenfolge nicht relevant ist, können Sie einfach 'set (a) - set (b)' 'drucken. – jonrsharpe