code: def config_prefix(prefix):
      
  
      # Note: reset_option relies on set_option, and on key directly
      # it does not fit in to this monkey-patching scheme
  
      global register_option, get_option, set_option, reset_option
  
      def wrap(func):
          def inner(key, *args, **kwds):
              pkey = '{prefix}.{key}'.format(prefix=prefix, key=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
docs: 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._config.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.