Is there a simpler way to modify all arguments in a function before using the arguments?

Miki Tebeka miki.tebeka at gmail.com
Fri Nov 9 23:17:08 EST 2012


> Is there a simpler way to modify all arguments in a function before using the arguments?
You can use a decorator:

from functools import wraps

def fix_args(fn):
    @wraps(fn)
    def wrapper(*args):
        args = (arg.replace('_', '') for arg in args)
        return fn(*args)

    return wrapper

@fix_args
def foo(x, y):
    print(x)
    print(y)



More information about the Python-list mailing list