Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #87797

Re: __iadd__ with 2 args?

References <mei398$isr$1@ger.gmane.org>
From Ian Kelly <ian.g.kelly@gmail.com>
Date 2015-03-20 15:33 -0600
Subject Re: __iadd__ with 2 args?
Newsgroups comp.lang.python
Message-ID <mailman.48.1426887270.10327.python-list@python.org> (permalink)

Show all headers | View raw


On Fri, Mar 20, 2015 at 3:25 PM, Neal Becker <ndbecker2@gmail.com> wrote:
> I can write a member
>
> F.__iadd__ (self, *args)
>
> and then call it with 2 args:
>
> f = F()
> f.__iadd__ (a, b)
>
> And then args is:
> (a, b)
>
> But it seems impossible to spell this as
>
> f += a, b
>
> That, instead, results in
>
> args = ((a, b),)
>
> So should I just abandon the idea that += could be used this way?

Is there some reason you need the *? Just have it take one argument
which will be a tuple.

>>> class F:
...   def __iadd__(self, other):
...     print(other)
...
>>> f = F()
>>> f += 1, 2
(1, 2)

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: __iadd__ with 2 args? Ian Kelly <ian.g.kelly@gmail.com> - 2015-03-20 15:33 -0600

csiph-web