Package org.python.core
Class PyDictionary
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.PyDictionary
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
PyDictionaryDerived
public class PyDictionary extends PyObject
A builtin python dictionary.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
exposed_name
-
Constructor Summary
Constructors Constructor Description PyDictionary()
Create an empty dictionary.PyDictionary(java.util.Hashtable t)
Create an new dictionary which is based on the hashtable.PyDictionary(PyObject[] elements)
Create a new dictionary with the element as content.PyDictionary(PyType subtype)
For derived types
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
__cmp__(PyObject ob_other)
Equivalent to the standard Python __cmp__ method.boolean
__contains__(PyObject o)
Equivalent to the standard Python __contains__ method.void
__delitem__(PyObject key)
Equivalent to the standard Python __delitem__ method.PyObject
__eq__(PyObject ob_other)
Equivalent to the standard Python __eq__ method.PyObject
__finditem__(int index)
A variant of the __finditem__ method which accepts a primitiveint
as the key.PyObject
__finditem__(PyObject key)
Very similar to the standard Python __getitem__ method.PyObject
__iter__()
Return an iterator that is used to iterate the element of this sequence.int
__len__()
Equivalent to the standard Python __len__ method.PyObject
__ne__(PyObject ob_other)
Equivalent to the standard Python __ne__ method.boolean
__nonzero__()
Equivalent to the standard Python __nonzero__ method.void
__setitem__(PyObject key, PyObject value)
Equivalent to the standard Python __setitem__ method.void
clear()
Remove all items from the dictionary.PyDictionary
copy()
Return a shallow copy of the dictionary.static PyObject
fromkeys(PyObject keys)
static PyObject
fromkeys(PyObject keys, PyObject value)
PyObject
get(PyObject key)
Return this[key] if the key exists in the mapping, None is returned otherwise.PyObject
get(PyObject key, PyObject default_object)
Return this[key] if the key exists in the mapping, default_object is returned otherwise.boolean
has_key(PyObject key)
Return true if the key exist in the dictionary.int
hashCode()
boolean
isSequenceType()
PyList
items()
Return a copy of the dictionarys list of (key, value) tuple pairs.PyObject
iteritems()
Return an interator over (key, value) pairs.PyObject
iterkeys()
Return an interator over (key, value) pairs.PyObject
itervalues()
Return an interator over (key, value) pairs.PyList
keys()
Return a copy of the dictionarys list of keys.PyObject
pop(PyObject key)
Return a value based on key from the dictionary.PyObject
pop(PyObject key, PyObject defaultValue)
Return a value based on key from the dictionary or default if that key is not found.PyObject
popitem()
Return a random (key, value) tuple pair and remove the pair from the dictionary.PyObject
setdefault(PyObject key)
Return this[key] if the key exist, otherwise insert key with a None value and return None.PyObject
setdefault(PyObject key, PyObject failobj)
Return this[key] if the key exist, otherwise insert key with the value of failobj and return failobjjava.lang.String
toString()
static void
typeSetup(PyObject dict, PyType.Newstyle marker)
void
update(PyObject d)
Insert all the key:value pairs fromd
into this dictionary.PyList
values()
Return a copy of the dictionarys list of values.-
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __coerce_ex__, __complex__, __delattr__, __delattr__, __delete__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __findattr__, __findattr__, __finditem__, __float__, __floordiv__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iternext__, __itruediv__, __ixor__, __le__, __long__, __lshift__, __lt__, __mod__, __mul__, __neg__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __sub__, __tojava__, __truediv__, __unicode__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _in, _is, _isnot, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asInt, asLong, asName, asString, asStringOrNull, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getDoc, getType, implementsDescrDelete, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isMappingType, isNumberType, noAttributeError, readonlyAttributeError, safeRepr, setDict, setType
-
-
-
-
Field Detail
-
exposed_name
public static final java.lang.String exposed_name
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PyDictionary
public PyDictionary()
Create an empty dictionary.
-
PyDictionary
public PyDictionary(PyType subtype)
For derived types- Parameters:
subtype
-
-
PyDictionary
public PyDictionary(java.util.Hashtable t)
Create an new dictionary which is based on the hashtable.- Parameters:
t
- the hashtable used. The supplied hashtable is used as is and must only contain PyObject key:value pairs.
-
PyDictionary
public PyDictionary(PyObject[] elements)
Create a new dictionary with the element as content.- Parameters:
elements
- The initial elements that is inserted in the dictionary. Even numbered elements are keys, odd numbered elements are values.
-
-
Method Detail
-
typeSetup
public static void typeSetup(PyObject dict, PyType.Newstyle marker)
-
__len__
public int __len__()
Description copied from class:PyObject
Equivalent to the standard Python __len__ method. Part of the mapping discipline.
-
__nonzero__
public boolean __nonzero__()
Description copied from class:PyObject
Equivalent to the standard Python __nonzero__ method. Returns whether of not a givenPyObject
is considered true.- Overrides:
__nonzero__
in classPyObject
-
__finditem__
public PyObject __finditem__(int index)
Description copied from class:PyObject
A variant of the __finditem__ method which accepts a primitiveint
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 classPyObject
- Parameters:
index
- 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)
-
__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 classPyObject
- Parameters:
key
- the key to lookup in this container- Returns:
- the value corresponding to key or null if key is not found
-
__setitem__
public void __setitem__(PyObject key, PyObject value)
Description copied from class:PyObject
Equivalent to the standard Python __setitem__ method.- Overrides:
__setitem__
in classPyObject
- Parameters:
key
- the key whose value will be setvalue
- the value to set this key to
-
__delitem__
public void __delitem__(PyObject key)
Description copied from class:PyObject
Equivalent to the standard Python __delitem__ method.- Overrides:
__delitem__
in classPyObject
- Parameters:
key
- the key to be removed from the container
-
__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:PyObject iter = seq.__iter__(); for (PyObject item; (item = iter.__iternext__()) != null;) { // Do somting with item }
-
__eq__
public PyObject __eq__(PyObject ob_other)
Description copied from class:PyObject
Equivalent to the standard Python __eq__ method.
-
__ne__
public PyObject __ne__(PyObject ob_other)
Description copied from class:PyObject
Equivalent to the standard Python __ne__ method.
-
__cmp__
public int __cmp__(PyObject ob_other)
Description copied from class:PyObject
Equivalent to the standard Python __cmp__ method.
-
has_key
public boolean has_key(PyObject key)
Return true if the key exist in the dictionary.
-
__contains__
public boolean __contains__(PyObject o)
Description copied from class:PyObject
Equivalent to the standard Python __contains__ method.- Overrides:
__contains__
in classPyObject
- Parameters:
o
- the element to search for in this container.- Returns:
- the result of the search.
-
get
public PyObject get(PyObject key, PyObject default_object)
Return this[key] if the key exists in the mapping, default_object is returned otherwise.- Parameters:
key
- the key to lookup in the dictionary.default_object
- the value to return if the key does not exists in the mapping.
-
get
public PyObject get(PyObject key)
Return this[key] if the key exists in the mapping, None is returned otherwise.- Parameters:
key
- the key to lookup in the dictionary.
-
copy
public PyDictionary copy()
Return a shallow copy of the dictionary.
-
clear
public void clear()
Remove all items from the dictionary.
-
update
public void update(PyObject d)
Insert all the key:value pairs fromd
into this dictionary.
-
setdefault
public PyObject setdefault(PyObject key)
Return this[key] if the key exist, otherwise insert key with a None value and return None.- Parameters:
key
- the key to lookup in the dictionary.
-
setdefault
public PyObject setdefault(PyObject key, PyObject failobj)
Return this[key] if the key exist, otherwise insert key with the value of failobj and return failobj- Parameters:
key
- the key to lookup in the dictionary.failobj
- the default value to insert in the dictionary if key does not already exist.
-
pop
public PyObject pop(PyObject key, PyObject defaultValue)
Return a value based on key from the dictionary or default if that key is not found.
-
popitem
public PyObject popitem()
Return a random (key, value) tuple pair and remove the pair from the dictionary.
-
items
public PyList items()
Return a copy of the dictionarys list of (key, value) tuple pairs.
-
keys
public PyList keys()
Return a copy of the dictionarys list of keys.
-
values
public PyList values()
Return a copy of the dictionarys list of values.
-
iteritems
public PyObject iteritems()
Return an interator over (key, value) pairs.
-
iterkeys
public PyObject iterkeys()
Return an interator over (key, value) pairs.
-
itervalues
public PyObject itervalues()
Return an interator over (key, value) pairs.
-
isSequenceType
public boolean isSequenceType()
- Overrides:
isSequenceType
in classPyObject
-
-