Python Forum
wishing for a 3-way loop construct
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
wishing for a 3-way loop construct
#4
Couldn't you do this with a with block?  The context manager you define can handle the "first" and "last", while the block is what gets executed in between?

>>> class Pipe:
...   def __init__(self, start, end):
...     self.start = start
...     self.end = end
...   def __enter__(self):
...     self.start(self)
...     return self
...   def __exit__(self, *args):
...     self.end(self)
...
>>> def setup(pipe):
...   pipe.counter = 0
...
>>> def teardown(pipe):
...   print("final count: {0}".format(pipe.counter))
...
>>> with Pipe(setup, teardown) as p:
...   for i in range(4):
...     p.counter += i
...
final count: 6
Reply


Messages In This Thread
wishing for a 3-way loop construct - by Skaperen - Feb-13-2017, 03:07 AM
RE: wishing for a 3-way loop construct - by Larz60+ - Feb-13-2017, 03:29 AM
RE: wishing for a 3-way loop construct - by nilamo - Feb-13-2017, 04:52 AM
RE: wishing for a 3-way loop construct - by Larz60+ - Feb-13-2017, 05:53 AM
RE: wishing for a 3-way loop construct - by Ofnuts - Feb-13-2017, 08:37 AM
RE: wishing for a 3-way loop construct - by Larz60+ - Feb-13-2017, 08:52 PM
RE: wishing for a 3-way loop construct - by nilamo - Feb-15-2017, 03:58 AM
RE: wishing for a 3-way loop construct - by Ofnuts - Mar-22-2017, 01:38 PM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020