Class PyComplex

java.lang.Object
org.python.core.PyObject
org.python.core.PyComplex
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
PyComplexDerived

public class PyComplex extends PyObject
A builtin python complex number
See Also:
  • Field Details

    • TYPE

      public static final PyType TYPE
    • Inf

      public static final PyComplex Inf
    • NaN

      public static final PyComplex NaN
    • real

      public double real
    • imag

      public double imag
  • Constructor Details

    • PyComplex

      public PyComplex(PyType subtype, double r, double i)
    • PyComplex

      public PyComplex(double r, double i)
    • PyComplex

      public PyComplex(double r)
  • Method Details

    • complex_new

      public static PyObject complex_new(PyNewWrapper new_, boolean init, PyType subtype, PyObject[] args, String[] keywords)
    • getReal

      public final PyFloat getReal()
    • getImag

      public final PyFloat getImag()
    • toString

      public static String toString(double value)
    • toString

      public String toString()
      Overrides:
      toString in class PyObject
    • __str__

      public PyString __str__()
      Description copied from class: PyObject
      Equivalent to the standard Python __str__ method. The default implementation (in PyObject) calls PyObject.__repr__(), making it unnecessary to override __str__ in sub-classes of PyObject where both forms are the same. A common choice is to provide the same implementation to __str__ and toString, for consistency in the printed form of objects between Python and Java.
      Overrides:
      __str__ in class PyObject
    • __repr__

      public PyString __repr__()
      Description copied from class: PyObject
      Equivalent to the standard Python __repr__ method. Each sub-class of PyObject is likely to re-define this method to provide for its own reproduction.
      Overrides:
      __repr__ in class PyObject
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class PyObject
    • __nonzero__

      public boolean __nonzero__()
      Description copied from class: PyObject
      Equivalent to the standard Python __nonzero__ method. Returns whether of not a given PyObject is considered true.
      Overrides:
      __nonzero__ in class PyObject
    • __cmp__

      public int __cmp__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __cmp__ method.
      Overrides:
      __cmp__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      -1 if this<o; 0 if this==o; +1 if this>o; -2 if no comparison is implemented
    • __eq__

      public PyObject __eq__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __eq__ method.
      Overrides:
      __eq__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __ne__

      public PyObject __ne__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __ne__ method.
      Overrides:
      __ne__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __ge__

      public PyObject __ge__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __ge__ method.
      Overrides:
      __ge__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __gt__

      public PyObject __gt__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __gt__ method.
      Overrides:
      __gt__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __le__

      public PyObject __le__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __le__ method.
      Overrides:
      __le__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __lt__

      public PyObject __lt__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __lt__ method.
      Overrides:
      __lt__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __coerce_ex__

      public Object __coerce_ex__(PyObject other)
      Description copied from class: PyObject
      Implements numeric coercion
      Overrides:
      __coerce_ex__ in class PyObject
      Parameters:
      other - the other object involved in the coercion
      Returns:
      null if coercion is not implemented Py.None if coercion was not possible a single PyObject to use to replace o if this is unchanged; or a PyObject[2] consisting of replacements for this and o.
    • __add__

      public PyObject __add__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __add__ method.
      Overrides:
      __add__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the add, or null if this operation is not defined.
    • __radd__

      public PyObject __radd__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __radd__ method.
      Overrides:
      __radd__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the add, or null if this operation is not defined.
    • __sub__

      public PyObject __sub__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __sub__ method
      Overrides:
      __sub__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the sub, or null if this operation is not defined
    • __rsub__

      public PyObject __rsub__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rsub__ method
      Overrides:
      __rsub__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the sub, or null if this operation is not defined.
    • __mul__

      public PyObject __mul__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __mul__ method.
      Overrides:
      __mul__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the mul, or null if this operation is not defined
    • __rmul__

      public PyObject __rmul__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rmul__ method.
      Overrides:
      __rmul__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the mul, or null if this operation is not defined.
    • __div__

      public PyObject __div__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __div__ method
      Overrides:
      __div__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the div, or null if this operation is not defined
    • __rdiv__

      public PyObject __rdiv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rdiv__ method
      Overrides:
      __rdiv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the div, or null if this operation is not defined.
    • __floordiv__

      public PyObject __floordiv__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __floordiv__ method
      Overrides:
      __floordiv__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the floordiv, or null if this operation is not defined
    • __rfloordiv__

      public PyObject __rfloordiv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rfloordiv__ method
      Overrides:
      __rfloordiv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the floordiv, or null if this operation is not defined.
    • __tojava__

      public Object __tojava__(Class<?> c)
      Description copied from class: PyObject
      Equivalent to the Jython __tojava__ method. Tries to coerce this object to an instance of the requested Java class. Returns the special object Py.NoConversion if this PyObject can not be converted to the desired Java class.
      Overrides:
      __tojava__ in class PyObject
      Parameters:
      c - the Class to convert this PyObject to.
    • __truediv__

      public PyObject __truediv__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __truediv__ method
      Overrides:
      __truediv__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the truediv, or null if this operation is not defined
    • __rtruediv__

      public PyObject __rtruediv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rtruediv__ method
      Overrides:
      __rtruediv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the truediv, or null if this operation is not defined.
    • __mod__

      public PyObject __mod__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __mod__ method
      Overrides:
      __mod__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the mod, or null if this operation is not defined
    • __rmod__

      public PyObject __rmod__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rmod__ method
      Overrides:
      __rmod__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the mod, or null if this operation is not defined.
    • __divmod__

      public PyObject __divmod__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __divmod__ method
      Overrides:
      __divmod__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the divmod, or null if this operation is not defined
    • __rdivmod__

      public PyObject __rdivmod__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rdivmod__ method
      Overrides:
      __rdivmod__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the divmod, or null if this operation is not defined.
    • __pow__

      public PyObject __pow__(PyObject right, PyObject modulo)
      Description copied from class: PyObject
      Implements the three argument power function.
      Overrides:
      __pow__ in class PyObject
      Parameters:
      right - the power to raise this number to.
      modulo - the modulus to perform this operation in or null if no modulo is to be used
      Returns:
      this object raised to the given power in the given modulus
    • __rpow__

      public PyObject __rpow__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rpow__ method
      Overrides:
      __rpow__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the pow, or null if this operation is not defined.
    • _pow

      public static PyObject _pow(PyComplex value, PyComplex right)
    • __neg__

      public PyObject __neg__()
      Description copied from class: PyObject
      Equivalent to the standard Python __neg__ method.
      Overrides:
      __neg__ in class PyObject
      Returns:
      -this.
    • __pos__

      public PyObject __pos__()
      Description copied from class: PyObject
      Equivalent to the standard Python __pos__ method.
      Overrides:
      __pos__ in class PyObject
      Returns:
      +this.
    • __invert__

      public PyObject __invert__()
      Description copied from class: PyObject
      Equivalent to the standard Python __invert__ method.
      Overrides:
      __invert__ in class PyObject
      Returns:
      ~this.
    • __abs__

      public PyObject __abs__()
      Description copied from class: PyObject
      Equivalent to the standard Python __abs__ method.
      Overrides:
      __abs__ in class PyObject
      Returns:
      abs(this).
    • __int__

      public PyObject __int__()
      Description copied from class: PyObject
      Equivalent to the standard Python __int__ method. Should only be overridden by numeric objects that can be reasonably coerced into an integer.
      Overrides:
      __int__ in class PyObject
      Returns:
      an integer corresponding to the value of this object.
    • __long__

      public PyObject __long__()
      Description copied from class: PyObject
      Equivalent to the standard Python __long__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python long.
      Overrides:
      __long__ in class PyObject
      Returns:
      a PyLong or PyInteger corresponding to the value of this object.
    • __float__

      public PyFloat __float__()
      Description copied from class: PyObject
      Equivalent to the standard Python __float__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python float.
      Overrides:
      __float__ in class PyObject
      Returns:
      a float corresponding to the value of this object.
    • __complex__

      public PyComplex __complex__()
      Description copied from class: PyObject
      Equivalent to the standard Python __complex__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python complex number.
      Overrides:
      __complex__ in class PyObject
      Returns:
      a complex number corresponding to the value of this object.
    • conjugate

      public PyComplex conjugate()
      Description copied from class: PyObject
      Equivalent to the standard Python conjugate method. Should only be overridden by numeric objects that can calculate a complex conjugate.
      Overrides:
      conjugate in class PyObject
      Returns:
      the complex conjugate.
    • __getnewargs__

      public PyTuple __getnewargs__()
      Overrides:
      __getnewargs__ in class PyObject
    • __format__

      public PyObject __format__(PyObject formatSpec)
      Overrides:
      __format__ in class PyObject
    • isNumberType

      public boolean isNumberType()
      Overrides:
      isNumberType in class PyObject