#!/usr/bin/env python # -*- coding: utf-8 -*- import functools def static_var(*couples): """Decorator setting static variable to a function. """ # Using setattr magic, we set static # variable on function. This avoid # computing stuff again. def decorate(fun): functools.wraps(fun) for (name, val) in couples: setattr(fun, name, val) return fun return decorate