DNPotapov / Codewars-katas-

0 stars 0 forks source link

Context manager decorator (5 kyu) #34

Open DNPotapov opened 1 year ago

DNPotapov commented 1 year ago
def contextmanager(func):
    def wrapper(*args, **kwargs):
        class Solution:
            def __init__(self, func, *args):
                self.obj = func(*args)

            def __enter__(self):
                return next(self.obj)

            def __exit__(self, *args):
                pass

        return Solution(func, *args)

    return wrapper
DNPotapov commented 1 year ago

https://www.codewars.com/kata/54e0816286522e95990007de