On Wed, Oct 27, 2021 at 7:39 PM dn via Python-list <python-list@python.org> wrote: > Accordingly: is this a job for the walrus operator at all? Let's "talk > of many [other] things"*.
+1 > Could we use a data structure to continue to keep things straight-forward? > > class my_class(): > def __init__( self, a, b )->None; > self.a = a > self.b = b > > instance = my_class( a, b ) > > > Sorry, you're probably becoming impatient with me. Surely I'm typing > more code than necessary? Maybe, but there are other measures of > code-quality/good-practice/etc, and there's likely more to 'it' than > just these few lines... > > > First consideration: the algorithm needs us to 'feed' the > while-condition. So let's flesh-out: > > def is_more( self )->bool: > # you know what goes here - I don't, but that's not the issue > # the return value is all that matters > return is_there_any_more_data_to_calculate? > > In which case, the loop becomes: > > while instance.is_more(): > more calculations > > and 'readability' improves immeasurably! I'd be inclined to write all of this as a generator function, yielding a series of tuples, but YMMV. > * this gratuitous and somewhat awkward expression is me claiming to be > clever by quoting Lewis Carroll - if he isn't sick of me > baiting-the-hook, it might earn extra brownie-points (or another groan) > from @Chris... Given that you were talking about a walrus, I think it was quite apt :) ChrisA -- https://mail.python.org/mailman/listinfo/python-list