class_docstr: Class which generates and stores classification batches.
  
  Each classification batch contains result of the classification of one
  batch of adversarial images.
class_docstr_tok: ["Class","which","generates","and","stores","classification","batches",".","Each","classification","batch","contains","result","of","the","classification","of","one","batch","of","adversarial","images","."]
docstr: Reads and returns single batch from the datastore.
docstr_tok: ["Reads","and","returns","single","batch","from","the","datastore","."]
code: def read_batch_from_datastore(self, class_batch_id):
      """Reads and returns single batch from the datastore."""
      client = self._datastore_client
      key = client.key(KIND_CLASSIFICATION_BATCH, class_batch_id)
      result = client.get(key)
      if result is not None:
          return dict(result)
      else:
          raise KeyError(
              "Key {0} not found in the datastore".format(key.flat_path)
          )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import csv
  from io import BytesIO
  from io import StringIO
  import logging
  import os
  import pickle
  import time
  from six import iteritems
  from six import iterkeys
  from six import itervalues
  from six import PY3
label_desc: Use image node_id 8 for calling the ClassificationBatches obj's underlying member method code with example usage: obj.read_batch_from_datastore(class_batch_id) and returns: dict