def run(self, program=None, feed=None, fetch_list=None, feed_var_name='feed', fetch_var_name='fetch', scope=None, return_numpy=True, use_program_cache=False):
    '\n        Run program by this Executor. Feed data by feed map, fetch result by\n        fetch_list. Python executor takes a program, add feed operators and\n        fetch operators to this program according to feed map and fetch_list.\n        Feed map provides input data for the program. fetch_list provides\n        the variables(or names) that user want to get after program run.\n\n        Note: the executor will run all operators in the program but not\n        only the operators dependent by the fetch_list.\n\n        Examples:\n            .. code-block:: python\n\n              import paddle.fluid as fluid\n              import numpy\n\n              # First create the Executor.\n              place = fluid.CPUPlace() # fluid.CUDAPlace(0)\n              exe = fluid.Executor(place)\n\n              data = fluid.layers.data(name=\'X\', shape=[1], dtype=\'float32\')\n              hidden = fluid.layers.fc(input=data, size=10)\n              loss = fluid.layers.mean(hidden)\n              adam = fluid.optimizer.Adam()\n              adam.minimize(loss)\n\n              # Run the startup program once and only once.\n              exe.run(fluid.default_startup_program())\n\n              x = numpy.random.random(size=(10, 1)).astype(\'float32\')\n              outs = exe.run(feed={\'X\': x},\n                             fetch_list=[loss.name])\n\n        Args:\n            program(Program|CompiledProgram): the program that need to run,\n                if not provided, then default_main_program (not compiled) will be used.\n            feed(dict): feed variable map, e.g. {"image": ImageData, "label": LabelData}\n            fetch_list(list): a list of variable or variable names that user \n                wants to get, this method will return them according to this list.\n            feed_var_name(str): the name for the input variable of \n                feed Operator.\n            fetch_var_name(str): the name for the output variable of \n                fetch Operator.\n            scope(Scope): the scope used to run this program, you can switch \n                it to different scope. default is global_scope\n            return_numpy(bool): if convert the fetched tensor to numpy\n            use_program_cache(bool): whether to use the cached program \n                settings across batches. Setting it be true would be faster \n                only when (1) the program is not compiled with data parallel, \n                and (2) program, feed variable names and fetch_list variable \n                names do not changed compared to the last step. \n                \n        Returns:\n\n            list(numpy.array): fetch result according to fetch_list.\n        '
    try:
        return self._run_impl(program=program, feed=feed, fetch_list=fetch_list, feed_var_name=feed_var_name, fetch_var_name=fetch_var_name, scope=scope, return_numpy=return_numpy, use_program_cache=use_program_cache)
    except Exception as e:
        if (not isinstance(e, core.EOFException)):
            print('An exception was thrown!\n {}'.format(str(e)))
        raise e
Run program by this Executor. Feed data by feed map, fetch result by
fetch_list. Python executor takes a program, add feed operators and
fetch operators to this program according to feed map and fetch_list.
Feed map provides input data for the program. fetch_list provides
the variables(or names) that user want to get after program run.

Note: the executor will run all operators in the program but not
only the operators dependent by the fetch_list.

Examples:
    .. code-block:: python

      import paddle.fluid as fluid
      import numpy

      # First create the Executor.
      place = fluid.CPUPlace() # fluid.CUDAPlace(0)
      exe = fluid.Executor(place)

      data = fluid.layers.data(name='X', shape=[1], dtype='float32')
      hidden = fluid.layers.fc(input=data, size=10)
      loss = fluid.layers.mean(hidden)
      adam = fluid.optimizer.Adam()
      adam.minimize(loss)

      # Run the startup program once and only once.
      exe.run(fluid.default_startup_program())

      x = numpy.random.random(size=(10, 1)).astype('float32')
      outs = exe.run(feed={'X': x},
                     fetch_list=[loss.name])

Args:
    program(Program|CompiledProgram): the program that need to run,
        if not provided, then default_main_program (not compiled) will be used.
    feed(dict): feed variable map, e.g. {"image": ImageData, "label": LabelData}
    fetch_list(list): a list of variable or variable names that user 
        wants to get, this method will return them according to this list.
    feed_var_name(str): the name for the input variable of 
        feed Operator.
    fetch_var_name(str): the name for the output variable of 
        fetch Operator.
    scope(Scope): the scope used to run this program, you can switch 
        it to different scope. default is global_scope
    return_numpy(bool): if convert the fetched tensor to numpy
    use_program_cache(bool): whether to use the cached program 
        settings across batches. Setting it be true would be faster 
        only when (1) the program is not compiled with data parallel, 
        and (2) program, feed variable names and fetch_list variable 
        names do not changed compared to the last step. 
        
Returns:

    list(numpy.array): fetch result according to fetch_list.
def run(self, program=None, feed=None, fetch_list=None, feed_var_name='feed', fetch_var_name='fetch', scope=None, return_numpy=True, use_program_cache=False):
    '\n        Run program by this Executor. Feed data by feed map, fetch result by\n        fetch_list. Python executor takes a program, add feed operators and\n        fetch operators to this program according to feed map and fetch_list.\n        Feed map provides input data for the program. fetch_list provides\n        the variables(or names) that user want to get after program run.\n\n        Note: the executor will run all operators in the program but not\n        only the operators dependent by the fetch_list.\n\n        Examples:\n            .. code-block:: python\n\n              import paddle.fluid as fluid\n              import numpy\n\n              # First create the Executor.\n              place = fluid.CPUPlace() # fluid.CUDAPlace(0)\n              exe = fluid.Executor(place)\n\n              data = fluid.layers.data(name=\'X\', shape=[1], dtype=\'float32\')\n              hidden = fluid.layers.fc(input=data, size=10)\n              loss = fluid.layers.mean(hidden)\n              adam = fluid.optimizer.Adam()\n              adam.minimize(loss)\n\n              # Run the startup program once and only once.\n              exe.run(fluid.default_startup_program())\n\n              x = numpy.random.random(size=(10, 1)).astype(\'float32\')\n              outs = exe.run(feed={\'X\': x},\n                             fetch_list=[loss.name])\n\n        Args:\n            program(Program|CompiledProgram): the program that need to run,\n                if not provided, then default_main_program (not compiled) will be used.\n            feed(dict): feed variable map, e.g. {"image": ImageData, "label": LabelData}\n            fetch_list(list): a list of variable or variable names that user \n                wants to get, this method will return them according to this list.\n            feed_var_name(str): the name for the input variable of \n                feed Operator.\n            fetch_var_name(str): the name for the output variable of \n                fetch Operator.\n            scope(Scope): the scope used to run this program, you can switch \n                it to different scope. default is global_scope\n            return_numpy(bool): if convert the fetched tensor to numpy\n            use_program_cache(bool): whether to use the cached program \n                settings across batches. Setting it be true would be faster \n                only when (1) the program is not compiled with data parallel, \n                and (2) program, feed variable names and fetch_list variable \n                names do not changed compared to the last step. \n                \n        Returns:\n\n            list(numpy.array): fetch result according to fetch_list.\n        '
    try:
        return self._run_impl(program=program, feed=feed, fetch_list=fetch_list, feed_var_name=feed_var_name, fetch_var_name=fetch_var_name, scope=scope, return_numpy=return_numpy, use_program_cache=use_program_cache)
    except Exception as e:
        if (not isinstance(e, core.EOFException)):
            print('An exception was thrown!\n {}'.format(str(e)))
        raise e