code: def __init__(self, tensor):
      assert isinstance(tensor, tf.Tensor), tensor
      ndims = tensor.shape.ndims
      self.static = tensor.shape.as_list()
      if tensor.shape.is_fully_defined():
          self.dynamic = self.static[:]
      else:
          dynamic = tf.shape(tensor)
          self.dynamic = [
              DynamicLazyAxis(dynamic, k) for k in range(ndims)
          ]
  
      for k in range(ndims):
          if self.static[k] is not None:
              self.dynamic[k] = StaticLazyAxis(self.static[k])
  
file_path: tensorpack/tensorpack/models/shape_utils.py
imports: import tensorflow
label_desc: Use image node_id 1 to create a new StaticDynamicShape object from inherited base classes: object with example: obj = StaticDynamicShape(tensor)