human
Solve the following python programming problem given the following code:
@contextmanager
def config_prefix(prefix):
assistant
#Here is the Python program you requested.

    """contextmanager for multiple invocations of API  with a common prefix
    supported API functions: (register / get / set )__option
    Warning: This is not thread - safe, and won\t work properly if you import
    the API functions into your module using the "from x import y" construct.
    Example:
    import pandas.core.config as cf
    with cf.config_prefix("display.font"):
    cf.register_option("color", "red")
    cf.register_option("size", " 5 pt")
    cf.set_option(size, " 6 pt")
    cf.get_option(size)
    etc\
    will register options "display.font.color", "display.font.size", set the
    value of "display.font.size"... and so on.
    """
    global register_option, get_option, set_option, reset_option
    def wrap(func):
        def inner(key, *args, **kwds):
            pkey = ('%s.%s' % (prefix, key))
            return func(pkey, *args, **kwds)
        return inner
    _register_option = register_option
    _get_option = get_option
    _set_option = set_option
    set_option = wrap(set_option)
    get_option = wrap(get_option)
    register_option = wrap(register_option)
    (yield None)
    set_option = _set_option
    get_option = _get_option
    register_option = _register_option