I have use cases for "do exactly once".
Basically a sequence of actions which can be broken off (when something
goes wrong and the whole process should be aborted, or when something
succeeds and there is no need to try alternatives) at various points
with `break`. Thus avoiding multiple if...then indentation levels.
Of course it can be spelled as
for _ in '1':
for _ in ['once']:
etc. etc., so this is only a cosmetic need.
Best wishes
Rob Cliffe
On 01/03/2022 15:19, Eric Fahlgren wrote:
As you probably suspect, yes, it comes up every couple of years.
Here's one of the recent threads (there are more, just search for
'until' in the archives), that might give you some ideas for how this
discussion will progress. :)
https://mail.python.org/archives/list/python-ideas@python.org/thread/EDNARFL2RGOE53SLWPTD5ZLJQOYSVDCR
On Tue, Mar 1, 2022 at 7:09 AM <lynneandal...@optusnet.com.au> wrote:
Has anyone considered the idea of adding a "do at least once" loop
to Python? This is frequently referred to as a do ... while or
repeat ... until.
At the moment, it's a bit of a hack to achieve this in that we do
a 'while True: ( do thing ; if cond: ( break ) )'. Since I don't
know how to format these messages, I've used '{' for
line-beak-and-indent, ')' for line-break-and-dedent, and ';' for
line-break-keeping-same-indent-level.
My initial thoughts are that it would be reasonably easy to add a
'repeat: ( do thing ) until condition' which would far better
specify intent of the loop (despite the possibility of break,
while-true loops give no indication that it's not an infinite loop.
And using repeat...until will ensure whoever had to add the code
to the Python interpreter wouldn't have any clashes with the
current while loop.
Thoughts, anyone? Anyone? Bueller? :-)
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/2PM6QEZJAPE3H72GA6TJJIWNBT3Y3WLN/
Code of Conduct: http://python.org/psf/codeofconduct/
_______________________________________________
Python-ideas mailing list --python-ideas@python.org
To unsubscribe send an email topython-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived
athttps://mail.python.org/archives/list/python-ideas@python.org/message/BYNJ6C45M2QW6BA7QILGWTYYCCGETKSV/
Code of Conduct:http://python.org/psf/codeofconduct/
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/QAGHJPBP72FBTC2GDGYY435JFUX3EJJF/
Code of Conduct: http://python.org/psf/codeofconduct/