Package org.python.core

# Class PyTupleDerived

java.lang.Object
org.python.core.PyObject
org.python.core.PySequence
org.python.core.PySequenceList
org.python.core.PyTuple
org.python.core.PyTupleDerived

All Implemented Interfaces:
  `Serializable`, `Iterable`, `Collection`, `List`, `SequencedCollection`, `FinalizablePyObjectDerived`, `Slotted`, `Traverseproc`, `TraverseprocDerived`

public class PyTupleDerived extends PyTuple implements Slotted, FinalizablePyObjectDerived, TraverseprocDerived

See Also:
  - Serialized Form

## Nested Class Summary

## Nested classes/interfaces inherited from class org.python.core.PyObject

`PyObject.ConversionException`

## Field Summary

### Fields inherited from class org.python.core.PyTuple

`TYPE`

### Fields inherited from class org.python.core.PyObject

`gcMonitorGlobal`

## Constructor Summary

Constructors
Constructor
Description
`PyTupleDerived(PyType subtype, PyObject[] elements)`

## Method Summary

Modifier and Type
Method
Description
`PyObject`
`__abs__()`
Equivalent to the standard Python __abs__ method.
`PyObject`
`__add__(PyObject other)`
Equivalent to the standard Python __add__ method.
`PyObject`
`__and__(PyObject other)`
Equivalent to the standard Python __and__ method
`PyObject`
`__call__(PyObject[] args, String[] keywords)`
The basic method to override when implementing a callable object.
`int`
`__cmp__(PyObject other)`
Equivalent to the standard Python __cmp__ method.
`Object`
`__coerce_ex__(PyObject o)`
Implements numeric coercion
`PyComplex`
`__complex__()`
Equivalent to the standard Python __complex__ method.
`boolean`
`__contains__(PyObject o)`
Equivalent to the standard Python __contains__ method.
`void`
`__del_derived__()`
`__del_builtin__` is the built-in's own finalizer, while `__del_derived__` refers to an instance's in-dict `__del__`.
`void`
`__delattr__(String name)`
A variant of the __delattr__ method which accepts a String as the key.
`void`
`__delete__(PyObject obj)`
`void`
`__delitem__(PyObject key)`
Equivalent to the standard Python __delitem__ method.
`void`
`__delslice__(PyObject start, PyObject stop, PyObject step)`
`PyObject`
`__dir__()`
Equivalent to the standard Python __dir__ method.
`PyObject`
`__div__(PyObject other)`
Equivalent to the standard Python __div__ method
`PyObject`
`__divmod__(PyObject other)`
Equivalent to the standard Python __divmod__ method
`void`
`__ensure_finalizer__()`
PyObjects that implement `org.python.core.finalization.HasFinalizeTrigger` shall implement this method via:
`FinalizeTrigger.ensureFinalizer(this);`
`PyObject`
`__eq__(PyObject other)`
Equivalent to the standard Python __eq__ method.
`PyObject`
`__findattr_ex__(String name)`
Attribute lookup hook.
`PyObject`
`__finditem__(int key)`
A variant of the __finditem__ method which accepts a primitive `int` as the key.
`PyObject`
`__finditem__(PyObject key)`
Very similar to the standard Python __getitem__ method.
`PyFloat`
`__float__()`
Equivalent to the standard Python __float__ method.
`PyObject`
`__floordiv__(PyObject other)`
Equivalent to the standard Python __floordiv__ method
`PyObject`
`__format__(PyObject other)`
`PyObject`
`__ge__(PyObject other)`
Equivalent to the standard Python __ge__ method.
`PyObject`
`__get__(PyObject obj, PyObject type)`
Get descriptor for this PyObject.
`PyObject`
`__getitem__(PyObject key)`
Equivalent to the standard Python __getitem__ method.
`PyObject`
`__getslice__(PyObject start, PyObject stop, PyObject step)`
`PyObject`
`__gt__(PyObject other)`
Equivalent to the standard Python __gt__ method.
`PyString`
`__hex__()`
Equivalent to the standard Python __hex__ method Should only be overridden by numeric objects that can be reasonably represented as a hexadecimal string.
`PyObject`
`__iadd__(PyObject other)`
Equivalent to the standard Python __iadd__ method.
`PyObject`
`__iand__(PyObject other)`
Equivalent to the standard Python __iand__ method
`PyObject`
`__idiv__(PyObject other)`
Equivalent to the standard Python __idiv__ method
`PyObject`
`__ifloordiv__(PyObject other)`
Equivalent to the standard Python __ifloordiv__ method
`PyObject`
`__ilshift__(PyObject other)`
Equivalent to the standard Python __ilshift__ method
`PyObject`
`__imod__(PyObject other)`
Equivalent to the standard Python __imod__ method
`PyObject`
`__imul__(PyObject other)`
Equivalent to the standard Python __imul__ method.
`PyObject`
`__index__()`
Equivalent to the standard Python __index__ method.
`PyObject`
`__int__()`
Equivalent to the standard Python __int__ method.
`PyObject`
`__invert__()`
Equivalent to the standard Python __invert__ method.
`PyObject`
`__ior__(PyObject other)`
Equivalent to the standard Python __ior__ method
`PyObject`
`__ipow__(PyObject other)`
Equivalent to the standard Python __ipow__ method
`PyObject`
`__irshift__(PyObject other)`
Equivalent to the standard Python __irshift__ method
`PyObject`
`__isub__(PyObject other)`
Equivalent to the standard Python __isub__ method
`PyObject`
`__iter__()`
Return an iterator that is used to iterate the element of this sequence.
`PyObject`
`__iternext__()`
Return the next element of the sequence that this is an iterator for.
`PyObject`
`__itruediv__(PyObject other)`
Equivalent to the standard Python __itruediv__ method
`PyObject`
`__ixor__(PyObject other)`
Equivalent to the standard Python __ixor__ method
`PyObject`
`__le__(PyObject other)`
Equivalent to the standard Python __le__ method.
`int`
`__len__()`
Equivalent to the standard Python __len__ method.
`PyObject`
`__long__()`
Equivalent to the standard Python __long__ method.
`PyObject`
`__lshift__(PyObject other)`
Equivalent to the standard Python __lshift__ method
`PyObject`
`__lt__(PyObject other)`
Equivalent to the standard Python __lt__ method.
`PyObject`
`__mod__(PyObject other)`
Equivalent to the standard Python __mod__ method
`PyObject`
`__mul__(PyObject other)`
Equivalent to the standard Python __mul__ method.
`PyObject`
`__ne__(PyObject other)`
Equivalent to the standard Python __ne__ method.
`PyObject`
`__neg__()`
Equivalent to the standard Python __neg__ method.
`boolean`
`__nonzero__()`
Equivalent to the standard Python __nonzero__ method.
`PyString`
`__oct__()`
Equivalent to the standard Python __oct__ method.
`PyObject`
`__or__(PyObject other)`
Equivalent to the standard Python __or__ method
`PyObject`
`__pos__()`
Equivalent to the standard Python __pos__ method.
`PyObject`
`__pow__(PyObject other, PyObject modulo)`
Implements the three argument power function.
`PyObject`
`__radd__(PyObject other)`
Equivalent to the standard Python __radd__ method.
`PyObject`
`__rand__(PyObject other)`
Equivalent to the standard Python __rand__ method
`PyObject`
`__rdiv__(PyObject other)`
Equivalent to the standard Python __rdiv__ method
`PyObject`
`__rdivmod__(PyObject other)`
Equivalent to the standard Python __rdivmod__ method
`PyObject`
`__reduce__()`
Used for pickling.
`PyString`
`__repr__()`
Equivalent to the standard Python `__repr__` method.
`PyObject`
`__rfloordiv__(PyObject other)`
Equivalent to the standard Python __rfloordiv__ method
`PyObject`
`__rlshift__(PyObject other)`
Equivalent to the standard Python __rlshift__ method
`PyObject`
`__rmod__(PyObject other)`
Equivalent to the standard Python __rmod__ method
`PyObject`
`__rmul__(PyObject other)`
Equivalent to the standard Python __rmul__ method.
`PyObject`
`__ror__(PyObject other)`
Equivalent to the standard Python __ror__ method
`PyObject`
`__rpow__(PyObject other)`
Equivalent to the standard Python __rpow__ method
`PyObject`
`__rrshift__(PyObject other)`
Equivalent to the standard Python __rrshift__ method
`PyObject`
`__rshift__(PyObject other)`
Equivalent to the standard Python __rshift__ method
`PyObject`
`__rsub__(PyObject other)`
Equivalent to the standard Python __rsub__ method
`PyObject`
`__rtruediv__(PyObject other)`
Equivalent to the standard Python __rtruediv__ method
`PyObject`
`__rxor__(PyObject other)`
Equivalent to the standard Python __rxor__ method
`void`
`__set__(PyObject obj, PyObject value)`
`void`
`__setattr__(String name, PyObject value)`
A variant of the __setattr__ method which accepts a String as the key.
`void`
`__setitem__(PyObject key, PyObject value)`
Equivalent to the standard Python __setitem__ method.
`void`
`__setslice__(PyObject start, PyObject stop, PyObject step, PyObject value)`
`PyString`
`__str__()`
Equivalent to the standard Python __str__ method.
`PyObject`
`__sub__(PyObject other)`
Equivalent to the standard Python __sub__ method
`Object`
`__tojava__(Class c)`
Equivalent to the Jython __tojava__ method.
`PyObject`
`__truediv__(PyObject other)`
Equivalent to the standard Python __truediv__ method
`PyUnicode`
`__unicode__()`
`PyObject`
`__xor__(PyObject other)`
Equivalent to the standard Python __xor__ method
`void`
`delDict()`
`void`
`dispatch__init__(PyObject[] args, String[] keywords)`
Dispatch __init__ behavior
`PyObject`
`fastGetDict()`
xxx implements where meaningful
`PyObject`
`getDict()`
xxx implements where meaningful
`PyObject`
`getSlot(int index)`
`int`
`hashCode()`
`void`
`setDict(PyObject newDict)`
`void`
`setSlot(int index, PyObject value)`
`String`
`toString()`
`int`
`traverseDerived(Visitproc visit, Object arg)`
Traverses all reachable `PyObject`s.
`int`
`traverseDictIfAny(Visitproc visit, Object arg)`

### Methods inherited from class org.python.core.PyTuple

`__getnewargs__, add, add, addAll, addAll, clear, contains, containsAll, count, equals, fromIterable, get, getArray, index, index, index, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, pyadd, pyadd, pyget, pyset, refersDirectlyTo, remove, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray, traverse, tuple___iter__`

### Methods inherited from class org.python.core.PySequence

`__setitem__, isMappingType, isNumberType, isSequenceType`

### Methods inherited from class org.python.core.PyObject

`__call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __delattr__, __delitem__, __delslice__, __findattr__, __findattr__, __finditem__, __getattr__, __getattr__, __getitem__, __getslice__, __hash__, __idivmod__, __not__, __pow__, __reduce_ex__, __reduce_ex__, __setattr__, __setitem__, __setslice__, __trunc__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, bit_length, conjugate, delType, fastGetClass, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, noAttributeError, object___subclasshook__, readonlyAttributeError, setType`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Collection

`parallelStream, removeIf, stream, toArray`

### Methods inherited from interface java.lang.Iterable

`forEach`

### Methods inherited from interface java.util.List

`addFirst, addLast, getFirst, getLast, removeFirst, removeLast, replaceAll, reversed, sort, spliterator`

## Constructor Details

### PyTupleDerived

public PyTupleDerived(PyType subtype, PyObject[] elements)

## Method Details

### getSlot

public PyObject getSlot(int index)

Specified by:
  `getSlot` in interface `Slotted`

### setSlot

public void setSlot(int index, PyObject value)

Specified by:
  `setSlot` in interface `Slotted`

### __del_derived__

public void __del_derived__()
Description copied from interface: `FinalizablePyObjectDerived`
`__del_builtin__` is the built-in's own finalizer, while `__del_derived__` refers to an instance's in-dict `__del__`. A FinalizeTrigger calls `__del_derived__` first and - if existent - `__del_builtin__` after that. A plain `__del__` would behave as overridden by `__del_derived__`, i.e. won't be called if the type implements `FinalizablePyObjectDerived` while `__del_builtin__` is called in any case.

Specified by:
  `__del_derived__` in interface `FinalizablePyObjectDerived`

### __ensure_finalizer__

public void __ensure_finalizer__()
Description copied from class: `PyObject`
PyObjects that implement `org.python.core.finalization.HasFinalizeTrigger` shall implement this method via:
`FinalizeTrigger.ensureFinalizer(this);`

Overrides:
  `__ensure_finalizer__` in class `PyObject`

### traverseDerived

public int traverseDerived(Visitproc visit, Object arg)
Description copied from interface: `TraverseprocDerived`
Traverses all reachable `PyObject`s. Like in CPython, `arg` must be passed unmodified to `visit` as its second parameter.

Specified by:
  `traverseDerived` in interface `TraverseprocDerived`

### fastGetDict

public PyObject fastGetDict()
Description copied from class: `PyObject`
xxx implements where meaningful

Overrides:
  `fastGetDict` in class `PyObject`
Returns:
  internal object per instance dict or null

### getDict

public PyObject getDict()
Description copied from class: `PyObject`
xxx implements where meaningful

Overrides:
  `getDict` in class `PyObject`
Returns:
  internal object __dict__ or null

### setDict

public void setDict(PyObject newDict)

Overrides:
  `setDict` in class `PyObject`

### delDict

public void delDict()

Overrides:
  `delDict` in class `PyObject`

### traverseDictIfAny

public int traverseDictIfAny(Visitproc visit, Object arg)

### __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`

### __hex__

public PyString __hex__()
Description copied from class: `PyObject`
Equivalent to the standard Python __hex__ method Should only be overridden by numeric objects that can be reasonably represented as a hexadecimal string.

Overrides:
  `__hex__` in class `PyObject`
Returns:
  a string representing this object as a hexadecimal number.

### __oct__

public PyString __oct__()
Description copied from class: `PyObject`
Equivalent to the standard Python __oct__ method. Should only be overridden by numeric objects that can be reasonably represented as an octal string.

Overrides:
  `__oct__` in class `PyObject`
Returns:
  a string representing this object as an octal number.

### __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.

### __pos__

public PyObject __pos__()
Description copied from class: `PyObject`
Equivalent to the standard Python __pos__ method.

Overrides:
  `__pos__` in class `PyObject`
Returns:
  +this.

### __neg__

public PyObject __neg__()
Description copied from class: `PyObject`
Equivalent to the standard Python __neg__ method.

Overrides:
  `__neg__` 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).

### __invert__

public PyObject __invert__()
Description copied from class: `PyObject`
Equivalent to the standard Python __invert__ method.

Overrides:
  `__invert__` in class `PyObject`
Returns:
  ~this.

### __reduce__

public PyObject __reduce__()
Description copied from class: `PyObject`
Used for pickling. Default implementation calls object___reduce__.

Overrides:
  `__reduce__` in class `PyObject`
Returns:
  a tuple of (class, tuple)

### __dir__

public PyObject __dir__()
Description copied from class: `PyObject`
Equivalent to the standard Python __dir__ method.

Overrides:
  `__dir__` in class `PyObject`
Returns:
  a list of names defined by this object.

### __add__

public PyObject __add__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __add__ method.

Overrides:
  `__add__` in class `PyTuple`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __radd__ method.

Overrides:
  `__radd__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __sub__ method

Overrides:
  `__sub__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rsub__ method

Overrides:
  `__rsub__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __mul__ method.

Overrides:
  `__mul__` in class `PyTuple`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rmul__ method.

Overrides:
  `__rmul__` in class `PyTuple`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __div__ method

Overrides:
  `__div__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rdiv__ method

Overrides:
  `__rdiv__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __floordiv__ method

Overrides:
  `__floordiv__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rfloordiv__ method

Overrides:
  `__rfloordiv__` in class `PyObject`
Parameters:
  `other` - 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.

### __truediv__

public PyObject __truediv__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __truediv__ method

Overrides:
  `__truediv__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rtruediv__ method

Overrides:
  `__rtruediv__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __mod__ method

Overrides:
  `__mod__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rmod__ method

Overrides:
  `__rmod__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __divmod__ method

Overrides:
  `__divmod__` in class `PyObject`
Parameters:
  `other` - 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 other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rdivmod__ method

Overrides:
  `__rdivmod__` in class `PyObject`
Parameters:
  `other` - 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.

### __rpow__

public PyObject __rpow__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rpow__ method

Overrides:
  `__rpow__` in class `PyObject`
Parameters:
  `other` - 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.

### __lshift__

public PyObject __lshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __lshift__ method

Overrides:
  `__lshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the lshift, or null if this operation is not defined

### __rlshift__

public PyObject __rlshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rlshift__ method

Overrides:
  `__rlshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the left-hand operand).
Returns:
  the result of the lshift, or null if this operation is not defined.

### __rshift__

public PyObject __rshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rshift__ method

Overrides:
  `__rshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the rshift, or null if this operation is not defined

### __rrshift__

public PyObject __rrshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rrshift__ method

Overrides:
  `__rrshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the left-hand operand).
Returns:
  the result of the rshift, or null if this operation is not defined.

### __and__

public PyObject __and__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __and__ method

Overrides:
  `__and__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the and, or null if this operation is not defined

### __rand__

public PyObject __rand__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rand__ method

Overrides:
  `__rand__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the left-hand operand).
Returns:
  the result of the and, or null if this operation is not defined.

### __or__

public PyObject __or__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __or__ method

Overrides:
  `__or__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the or, or null if this operation is not defined

### __ror__

public PyObject __ror__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ror__ method

Overrides:
  `__ror__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the left-hand operand).
Returns:
  the result of the or, or null if this operation is not defined.

### __xor__

public PyObject __xor__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __xor__ method

Overrides:
  `__xor__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the xor, or null if this operation is not defined

### __rxor__

public PyObject __rxor__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __rxor__ method

Overrides:
  `__rxor__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the left-hand operand).
Returns:
  the result of the xor, or null if this operation is not defined.

### __lt__

public PyObject __lt__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __lt__ method.

Overrides:
  `__lt__` in class `PySequence`
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 `PySequence`
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 `PySequence`
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 `PySequence`
Parameters:
  `other` - the object to compare this with.
Returns:
  the result of the comparison.

### __eq__

public PyObject __eq__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __eq__ method.

Overrides:
  `__eq__` in class `PySequence`
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 `PySequence`
Parameters:
  `other` - the object to compare this with.
Returns:
  the result of the comparison.

### __format__

public PyObject __format__(PyObject other)

Overrides:
  `__format__` in class `PyObject`

### __iadd__

public PyObject __iadd__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __iadd__ method.

Overrides:
  `__iadd__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the iadd, or null if this operation is not defined

### __isub__

public PyObject __isub__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __isub__ method

Overrides:
  `__isub__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the isub, or null if this operation is not defined

### __imul__

public PyObject __imul__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __imul__ method.

Overrides:
  `__imul__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the imul, or null if this operation is not defined.

### __idiv__

public PyObject __idiv__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __idiv__ method

Overrides:
  `__idiv__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the idiv, or null if this operation is not defined

### __ifloordiv__

public PyObject __ifloordiv__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ifloordiv__ method

Overrides:
  `__ifloordiv__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the ifloordiv, or null if this operation is not defined

### __itruediv__

public PyObject __itruediv__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __itruediv__ method

Overrides:
  `__itruediv__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the itruediv, or null if this operation is not defined

### __imod__

public PyObject __imod__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __imod__ method

Overrides:
  `__imod__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the imod, or null if this operation is not defined

### __ipow__

public PyObject __ipow__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ipow__ method

Overrides:
  `__ipow__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the ipow, or null if this operation is not defined

### __ilshift__

public PyObject __ilshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ilshift__ method

Overrides:
  `__ilshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the ilshift, or null if this operation is not defined

### __irshift__

public PyObject __irshift__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __irshift__ method

Overrides:
  `__irshift__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the irshift, or null if this operation is not defined

### __iand__

public PyObject __iand__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __iand__ method

Overrides:
  `__iand__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the iand, or null if this operation is not defined

### __ior__

public PyObject __ior__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ior__ method

Overrides:
  `__ior__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the ior, or null if this operation is not defined

### __ixor__

public PyObject __ixor__(PyObject other)
Description copied from class: `PyObject`
Equivalent to the standard Python __ixor__ method

Overrides:
  `__ixor__` in class `PyObject`
Parameters:
  `other` - the object to perform this binary operation with (the right-hand operand).
Returns:
  the result of the ixor, or null if this operation is not defined

### __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.

### hashCode

public int hashCode()

Specified by:
  `hashCode` in interface `Collection`
Specified by:
  `hashCode` in interface `List`
Overrides:
  `hashCode` in class `PyTuple`

### __unicode__

public PyUnicode __unicode__()

Overrides:
  `__unicode__` 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

### __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 `PySequence`

### __contains__

public boolean __contains__(PyObject o)
Description copied from class: `PyObject`
Equivalent to the standard Python __contains__ method.

Overrides:
  `__contains__` in class `PyObject`
Parameters:
  `o` - the element to search for in this container.
Returns:
  the result of the search.

### __len__

public int __len__()
Description copied from class: `PyObject`
Equivalent to the standard Python __len__ method. Part of the mapping discipline.

Overrides:
  `__len__` in class `PyTuple`
Returns:
  the length of the object

### __iter__

public PyObject __iter__()
Description copied from class: `PyObject`
Return an iterator that is used to iterate the element of this sequence. From version 2.2, this method is the primary protocol for looping over sequences.

If a PyObject subclass should support iteration based in the __finditem__() method, it must supply an implementation of __iter__() like this:

     public PyObject __iter__() {
         return new PySequenceIter(this);
     }

When iterating over a python sequence from java code, it should be done with code like this:

     for (PyObject item : seq.asIterable()) {
         // Do something with item
     }

Overrides:
  `__iter__` in class `PyTuple`

### __iternext__

public PyObject __iternext__()
Description copied from class: `PyObject`
Return the next element of the sequence that this is an iterator for. Returns null when the end of the sequence is reached.

Overrides:
  `__iternext__` in class `PyObject`

### __finditem__

public PyObject __finditem__(PyObject key)
Description copied from class: `PyObject`
Very similar to the standard Python __getitem__ method. Instead of throwing a KeyError if the item isn't found, this just returns null. Classes that wish to implement __getitem__ should override this method instead (with the appropriate semantics.

Overrides:
  `__finditem__` in class `PySequence`
Parameters:
  `key` - the key to lookup in this container
Returns:
  the value corresponding to key or null if key is not found

### __finditem__

public PyObject __finditem__(int key)
Description copied from class: `PyObject`
A variant of the __finditem__ method which accepts a primitive `int` as the key. By default, this method will call `__finditem__(PyObject key)` with the appropriate args. The only reason to override this method is for performance.

Overrides:
  `__finditem__` in class `PySequence`
Parameters:
  `key` - the key to lookup in this sequence.
Returns:
  the value corresponding to key or null if key is not found.
See Also:
  - `PyObject.__finditem__(PyObject)`

### __getitem__

public PyObject __getitem__(PyObject key)
Description copied from class: `PyObject`
Equivalent to the standard Python __getitem__ method. This method should not be overridden. Override the `__finditem__` method instead.

Overrides:
  `__getitem__` in class `PySequence`
Parameters:
  `key` - the key to lookup in this container.
Returns:
  the value corresponding to that key.
See Also:
  - `PyObject.__finditem__(PyObject)`

### __setitem__

public void __setitem__(PyObject key, PyObject value)
Description copied from class: `PyObject`
Equivalent to the standard Python __setitem__ method.

Overrides:
  `__setitem__` in class `PySequence`
Parameters:
  `key` - the key whose value will be set
  `value` - the value to set this key to

### __getslice__

public PyObject __getslice__(PyObject start, PyObject stop, PyObject step)

Overrides:
  `__getslice__` in class `PySequence`

### __setslice__

public void __setslice__(PyObject start, PyObject stop, PyObject step, PyObject value)

Overrides:
  `__setslice__` in class `PySequence`

### __delslice__

public void __delslice__(PyObject start, PyObject stop, PyObject step)

Overrides:
  `__delslice__` in class `PySequence`

### __delitem__

public void __delitem__(PyObject key)
Description copied from class: `PyObject`
Equivalent to the standard Python __delitem__ method.

Overrides:
  `__delitem__` in class `PySequence`
Parameters:
  `key` - the key to be removed from the container

### __call__

public PyObject __call__(PyObject[] args, String[] keywords)
Description copied from class: `PyObject`
The basic method to override when implementing a callable object. The first len(args)-len(keywords) members of args[] are plain arguments. The last len(keywords) arguments are the values of the keyword arguments.

Overrides:
  `__call__` in class `PyObject`
Parameters:
  `args` - all arguments to the function (including keyword arguments).
  `keywords` - the keywords used for all keyword arguments.

### __findattr_ex__

public PyObject __findattr_ex__(String name)
Description copied from class: `PyObject`
Attribute lookup hook. If the attribute is not found, null may be returned or a Py.AttributeError can be thrown, whatever is more correct, efficient and/or convenient for the implementing class. Client code should use `PyObject.__getattr__(String)` or `PyObject.__findattr__(String)`. Both methods have a clear policy for failed lookups.

Overrides:
  `__findattr_ex__` in class `PyObject`
Returns:
  The looked up value. May return null if the attribute is not found

### __setattr__

public void __setattr__(String name, PyObject value)
Description copied from class: `PyObject`
A variant of the __setattr__ method which accepts a String as the key. This String must be interned.

Overrides:
  `__setattr__` in class `PyObject`
Parameters:
  `name` - the name whose value will be set - must be an interned string .
  `value` - the value to set this name to
See Also:
  - `PyObject.__setattr__(PyString, PyObject)`

### __delattr__

public void __delattr__(String name)
Description copied from class: `PyObject`
A variant of the __delattr__ method which accepts a String as the key. This String must be interned. By default, this will call `__delattr__(PyString name)` with the appropriate args. The only reason to override this method is for performance.

Overrides:
  `__delattr__` in class `PyObject`
Parameters:
  `name` - the name which will be removed - must be an interned string .
See Also:
  - `PyObject.__delattr__(PyString)`

### __get__

public PyObject __get__(PyObject obj, PyObject type)
Description copied from class: `PyObject`
Get descriptor for this PyObject.

Overrides:
  `__get__` in class `PyObject`
Parameters:
  `obj` - - the instance accessing this descriptor. Can be null if this is being accessed by a type.
  `type` - - the type accessing this descriptor. Will be null if obj exists as obj is of the type accessing the descriptor.
Returns:
  - the object defined for this descriptor for the given obj and type.

### __set__

public void __set__(PyObject obj, PyObject value)

Overrides:
  `__set__` in class `PyObject`

### __delete__

public void __delete__(PyObject obj)

Overrides:
  `__delete__` in class `PyObject`

### __pow__

public PyObject __pow__(PyObject other, PyObject modulo)
Description copied from class: `PyObject`
Implements the three argument power function.

Overrides:
  `__pow__` in class `PyObject`
Parameters:
  `other` - 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

### dispatch__init__

public void dispatch__init__(PyObject[] args, String[] keywords)
Description copied from class: `PyObject`
Dispatch __init__ behavior

Overrides:
  `dispatch__init__` in class `PyObject`

### __index__

public PyObject __index__()
Description copied from class: `PyObject`
Equivalent to the standard Python __index__ method.

Overrides:
  `__index__` in class `PyObject`
Returns:
  a PyInteger or PyLong

### __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 `PySequence`
Parameters:
  `c` - the Class to convert this `PyObject` to.

### __coerce_ex__

public Object __coerce_ex__(PyObject o)
Description copied from class: `PyObject`
Implements numeric coercion

Overrides:
  `__coerce_ex__` in class `PyObject`
Parameters:
  `o` - 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.

### toString

public String toString()

Overrides:
  `toString` in class `PyTuple`