[Python-de] Re: for unpacking
[email protected] (Stefan Ram) 6 Aug 2024 22:11:18 GMT
| Newsgroups | gmane.comp.python.general.german |
|---|---|
| Organization | Stefan Ram |
| Message-ID | <[email protected]> |
"Peter J. Holzer" <[email protected]> schrieb oder zitierte: >b += c >macht zwei Dinge: >1) Es ruft b.__iadd(c) auf. Wenn b mutable wäre, würde das den Wert des >Objekts, auf das b zeigt ändern und das Objekt zurückliefern. Ja, aber wenn Du Dir einmal den Abschnitt "7.2.1 Augmented assignment statements" in "The Python Language Reference Release 3.13.0a0" ansiehst, dann siehst Du, daß in jenem Abschnitt die Zeichenfolge "mut" gar nicht vorkommt. Dieses Nichtvorkommen legt es für mich nahe, daß die Frage der Veränderbarkeit des Ziels für die Bedeutung von "+=" nur eine begrenzte Bedeutung hat! |An augmented assignment evaluates the target (which, unlike |normal assignment statements, cannot be an unpacking) and the |expression list, performs the binary operation specific to |the type of assignment on the two operands, and assigns the |result to the original target. aus Abschnitt 7.2.1 In gesamten Kapitel 7.2 werden veränderliche Objekte nur für den Fall einer Zuweisung der Form obj[ ... ]= erwähnt. Der erste Satz, ganz am Anfang von 7.2, lautet: |Assignment statements are used to (re)bind names to values |and to modify attributes or items of mutable objects: ¯¯¯¯¯¯¯ . Wir können diesen Satz so formatieren: |Assignment statements are used to | | - (re)bind names to values and to (A) | | - modify attributes or items of mutable objects. (B) ¯¯¯¯¯¯¯ . Das heißt: Bei "Name =" (A) spielt die Frage der Veränderbarkeit ("mutability") kein Rolle. Bei "Ausdruck[ ... ]=" (B) muß der Ausdruck ein veränderbares Objekt angeben. _______________________________________________ python-de Mailingliste -- [email protected] Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an [email protected] https://mail.python.org/mailman3/lists/python-de.python.org/ Mitgliedsadresse: [email protected]