On Wed, 2 Mar 2022 at 09:24, Steven D'Aprano <st...@pearwood.info> wrote:
>
> On Tue, Mar 01, 2022 at 04:04:31PM +0000, Rob Cliffe via Python-ideas wrote:
>
> > 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`.
>
>     class MyBreak(Exception):
>         pass
>
>     try:
>         do_this()
>         if condition: raise MyBreak
>         do_that()
>         if condition: raise MyBreak
>         do_next_step()
>         if condition: raise MyBreak
>         do_last_step()
>     except MyBreak:
>         pass
>

All this is assuming that you can't refactor it into a function and
'return' each time. That's also a viable option, where applicable.

ChrisA
_______________________________________________
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/GN5MM3CKTMF5B3IGNZFM2BJ6OHNWWY7I/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to