copy on write
Thomas Rachel
nutznetz-0c1b6768-bfa9-48d5-a470-7603bd3aa915 at spamschutz.glglgl.de
Thu Feb 2 05:42:01 EST 2012
More information about the Python-list mailing list
Thu Feb 2 05:42:01 EST 2012
- Previous message (by thread): copy on write
- Next message (by thread): copy on write
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Am 13.01.2012 13:30 schrieb Chris Angelico: > It seems there's a distinct difference between a+=b (in-place > addition/concatenation) and a=a+b (always rebinding), There is indeed. a = a + b is a = a.__add__(b), while a += b is a = a.__iadd__(b). __add__() is supposed to leave the original object intact and return a new one, while __iadd__() is free to modify (preference, to be done if possible) or return a new one. A immutable object can only return a new one, and its __iadd__() behaviour is the same as __add__(). A mutable object, however, is free to and supposed to modify itself and then return self. Thomas
- Previous message (by thread): copy on write
- Next message (by thread): copy on write
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list