PaddlePaddle tiene un error al iterar sobre los datos: TypeError: el objeto 'función' no es iterable

Paddlepaddle Has An Error When Iterating Over Data

  • |_+_|,|_+_|

  • Descripción del problema: al leer los datos de entrenamiento con el lector, se produce un error y el tipo de error TypeError: el objeto 'función' no es iterable.



  • Mensaje de error:



|_+_|
  • Recurrencia del problema: al leer datos en un bucle, pase reader El lector definido itera sobre los datos, Data reading Se definen las variables utilizadas. Cuando se llama a la función, se informa de un error y el código de error es el siguiente:
|_+_|
  • Resolución de problemas: igual TypeError Traceback (most recent call last) in 2 for pass_id in range(1): 3 # training ----> 4 for batch_id, data in enumerate(train_reader): 5 train_cost, train_acc = exe.run(program=fluid.default_main_program(), 6 feed=feeder.feed(data), TypeError: 'function' object is not iterable Obtiene una función que lee datos, el valor de retorno es un lector, el error anterior se debe a que directamente paddle.batch() Variable, esta variable se refiere a una función, por lo que es necesario agregar un paréntesis para obtener el valor de retorno de este lector de funciones.
|_+_|

En las variables de Python, cuando no se utilizan los paréntesis, se llama a la función en sí, que es un objeto de función, y no tiene que esperar a que se complete la función. Cuando se utilizan paréntesis, se llama al resultado de la ejecución de la función y se requiere el resultado de la finalización de la ejecución de la función.