class_docstr: distributional Q-function output for discrete action space.
  
  Args:
      q_dist: Probabilities of atoms. Its shape must be
          (batchsize, n_actions, n_atoms).
      z_values (ndarray): Values represented by atoms.
          Its shape must be (n_atoms,).
class_docstr_tok: ["distributional","Q-function","output","for","discrete","action","space",".","Args",":","q_dist",":","Probabilities","of","atoms",".","Its","shape","must","be","(","batchsize",",","n_actions",",","n_atoms",")",".","z_values","(","ndarray",")",":","Values","represented","by","atoms",".","Its","shape","must","be","(","n_atoms",",",")","."]
code: def __getitem__(self, i):
      return DistributionalDiscreteActionValue(
          self.q_dist[i],
          self.z_values,
          q_values_formatter=self.q_values_formatter,
      )
  
imports: import warnings
  from abc import ABCMeta, abstractmethod, abstractproperty
  import torch
  import torch.nn.functional
  from torch.distributions.utils import lazy_property
label_desc: Use image node_id 12 for calling the DistributionalDiscreteActionValue obj's underlying member method code with example usage: obj.__getitem__(i) and returns: DistributionalDiscreteActionValue