Unterschied zwischen union() und union_update() in Gruppen und andere?

Python-Sätze haben diese Methoden:

s.union(t)  s | t   new set with elements from both s and t

s.update(t) s |= t  return set s with elements added from t

Ebenso gibt es auch diese:

s.intersection_update(t)    s &= t  return set s keeping only elements also found in t

s.intersection(t)   s & t   new set with elements common to s and t

Und so weiter, für alle standard-relationale-algebra-Operationen.

So...die Frage ist, was genau ist hier der Unterschied? Ich sehe, dass er sagt, dass die update () - Versionen gibt s statt einen neuen Satz, aber wenn ich Schreibe x = s.update(t) ist, dass bedeutet, dass id(x) == id(s)? Sie sind Referenzen auf das gleiche Objekt nun?

Ich meine, ich don ' T wirklich sehen, warum beide Sätze von Methoden implementiert. Es scheint nicht hinzufügen keine signifikante Funktionalität.

  • Bah, ich war das Lesen veralteter Dokumentation von Unfall.
  • Wo war das? 2.7.3 sets-Dokumentation nicht die Sprache, die Sie zitieren.
  • docs.python.org/2/library/sets.html - was ist, was kommt, wenn Sie google "python-sets", leider.
  • Ah, Sie fand die alte sets - Modul; die set built-in-Typ wurde später Hinzugefügt werden, ersetzen Sie das Modul. Oben heißt es Veraltet seit version 2.6: Der built-in-set/frozenset-Typen ersetzen Sie das Modul.
  • Wie ich heute gelernt.
  • Die Dokumentation für dieses Modul ist eigentlich auch falsch. Ich habe in der Quellcode und die *_update() Methoden zurück, Keines zu.

Schreibe einen Kommentar