On Wed, 2 Mar 2022 at 09:24, Steven D'Aprano <[email protected]> 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 -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/[email protected]/message/GN5MM3CKTMF5B3IGNZFM2BJ6OHNWWY7I/ Code of Conduct: http://python.org/psf/codeofconduct/
