[Python-Dev] [PEP] += on return of function call result (original) (raw)

Walter D�rwald walter@livinglogic.de
Thu, 03 Apr 2003 10:53:17 +0200


Greg Ewing wrote:

Andrew Koenig <ark@research.att.com>:

So the behavior of foo = d.setdefault(r,'') foo += "test %d\n" % t depends on what type foo has, and the OP didn't say. I assumed that the code snippet was from his actual application, in which case he did want it to work on strings, in which case, even if he had the feature he wanted, it wouldn't have helped him. [...] Being forced to find another way to update the value in this case is a feature, because the absence of such a way when the value is immutable makes it clear that there's no way to do what you're trying to do!

Mutable (or at least appendable) strings should probably be done with StringIO/cStringIO. How about adding support for iadd and str (and unicode) to both?

Bye, Walter D�rwald