code: def constant(name, shape, value=0, dtype=tf.sg_floatx, summary=True, regularizer=None, trainable=True):
      r
      shape = shape if isinstance(shape, (tuple, list)) else [shape]
      x = tf.get_variable(name, shape, dtype=dtype,
                          initializer=tf.constant_initializer(value),
                          regularizer=regularizer, trainable=trainable)
      # add summary
      if summary:
          tf.sg_summary_param(x)
      return x
docs: r"""Creates a tensor variable of which initial values are `value` and shape is `shape`.
  
      Args:
        name: The name of new variable.
        shape: A tuple/list of integers or an integer. 
          If shape is an integer, it is converted to a list.
        value: A Python scalar. All elements of the initialized variable
          will be set to this value. Default is 0.
        dtype: The data type. Only floating point types are supported. Default is float32.
        summary: If True, add this constant to tensor board summary.
        regularizer:  A (Tensor -> Tensor or None) function; the result of applying it on a newly created variable
          will be added to the collection tf.GraphKeys.REGULARIZATION_LOSSES and can be used for regularization
        trainable: If True, add this constant to trainable collection. Default is True.
  
      Returns:
        A `Variable`.