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/