class_docstr: A class to store nested objects in a collection of numpy arrays.
  
  If a data_spec of `{'foo': ArraySpec(shape=(4,), dtype=np.uint8), 'bar':
  ArraySpec(shape=(3, 7), dtype=np.float32)}` were used, then this would create
  two arrays, one for the 'foo' key and one for the 'bar' key. The .get and
  .set methods would return/take Python dictionaries, but break down the
  component arrays before storing them.
docstr: Creates or retrieves one of the numpy arrays backing the storage.
docstr_tok: ["Creates","or","retrieves","one","of","the","numpy","arrays","backing","the","storage","."]
code: def _array(self, index):
      """Creates or retrieves one of the numpy arrays backing the storage."""
      array = getattr(self._np_state, self._buf_names[index])
      if np.isscalar(array) or array.ndim == 0:
          spec = self._flat_specs[index]
          shape = (self._capacity,) + spec.shape
          array = np.zeros(shape=shape, dtype=spec.dtype)
          setattr(self._np_state, self._buf_names[index], array)
      return array
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import io
  import numpy
  import tensorflow
  from tf_agents.specs import array_spec
  from tensorflow.python.trackable import base
  from tensorflow.python.trackable import data_structures
label_desc: Use image node_id 2 for calling the NumpyStorage obj's underlying member method code with example usage: obj._array(index) and returns: array