Base Classes

About

FrozenBase is the base class for frozendict and FrozenOrderedDict. If you wish to construct your own frozen dictionary classes, you may inherit from this class.

API Reference

Base Classes.

Classes:

DictWrapper(*args, **kwds)

Abstract Mixin class for classes that wrap a dict object or similar.

FrozenBase(*args, **kwargs)

Abstract Base Class for Frozen dictionaries.

MutableBase(*args, **kwargs)

Abstract Base Class for mutable dictionaries.

class DictWrapper(*args, **kwds)[source]

Bases: Mapping[~KT, ~VT]

Abstract Mixin class for classes that wrap a dict object or similar.

Methods:

__contains__(key)

Return key in self.

__eq__(other)

Return self == other.

__getitem__(key)

Return self[key].

__iter__()

Iterates over the dictionary’s keys.

__len__()

Returns the number of keys in the dictionary.

__repr__()

Return a string representation of the DictWrapper.

copy(*args, **kwargs)

Return a copy of the dictionary.

get(k[, default])

Return the value for k if k is in the dictionary, else default.

items()

Returns a set-like object providing a view on the bdict's items.

keys()

Returns a set-like object providing a view on the bdict's keys.

values()

Returns an object providing a view on the bdict's values.

__contains__(key)[source]

Return key in self.

Parameters

key (object)

Return type

bool

__eq__(other)

Return self == other.

Return type

bool

__getitem__(key)[source]

Return self[key].

Parameters

key (~KT)

Return type

~VT

__iter__()[source]

Iterates over the dictionary’s keys.

Return type

Iterator[~KT]

__len__()[source]

Returns the number of keys in the dictionary.

Return type

int

__repr__()[source]

Return a string representation of the DictWrapper.

Return type

str

abstract copy(*args, **kwargs)[source]

Return a copy of the dictionary.

Return type

~_D

get(k, default=None)[source]

Return the value for k if k is in the dictionary, else default.

Parameters
  • k – The key to return the value for.

  • default – The value to return if key is not in the dictionary. Default None.

Overloads
items()[source]

Returns a set-like object providing a view on the bdict's items.

Return type

AbstractSet[Tuple[~KT, ~VT]]

keys()[source]

Returns a set-like object providing a view on the bdict's keys.

Return type

AbstractSet[~KT]

values()[source]

Returns an object providing a view on the bdict's values.

Return type

ValuesView[~VT]

class FrozenBase(*args, **kwargs)[source]

Bases: DictWrapper[~KT, ~VT]

Abstract Base Class for Frozen dictionaries.

Used by frozendict and FrozenOrderedDict.

Custom subclasses must implement at a minimum __init__, copy, fromkeys.

Methods:

__contains__(key)

Return key in self.

__eq__(other)

Return self == other.

__getitem__(key)

Return self[key].

__iter__()

Iterates over the dictionary’s keys.

__len__()

Returns the number of keys in the dictionary.

__repr__()

Return a string representation of the DictWrapper.

copy(*args, **kwargs)

Return a copy of the dictionary.

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

get(k[, default])

Return the value for k if k is in the dictionary, else default.

items()

Returns a set-like object providing a view on the bdict's items.

keys()

Returns a set-like object providing a view on the bdict's keys.

values()

Returns an object providing a view on the bdict's values.

__contains__(key)

Return key in self.

Parameters

key (object)

Return type

bool

__eq__(other)

Return self == other.

Return type

bool

__getitem__(key)

Return self[key].

Parameters

key (~KT)

Return type

~VT

__iter__()

Iterates over the dictionary’s keys.

Return type

Iterator[~KT]

__len__()

Returns the number of keys in the dictionary.

Return type

int

__repr__()

Return a string representation of the DictWrapper.

Return type

str

abstract copy(*args, **kwargs)

Return a copy of the dictionary.

Return type

~_D

classmethod fromkeys(iterable, value=None)[source]

Create a new dictionary with keys from iterable and values set to value.

Return type

FrozenBase[~KT, ~VT]

Overloads
  • fromkeys(iterable ) -> FrozenBase[KT, Any]

  • fromkeys(iterable, value ) -> FrozenBase[KT, VT]

get(k, default=None)

Return the value for k if k is in the dictionary, else default.

Parameters
  • k – The key to return the value for.

  • default – The value to return if key is not in the dictionary. Default None.

items()

Returns a set-like object providing a view on the bdict's items.

Return type

AbstractSet[Tuple[~KT, ~VT]]

keys()

Returns a set-like object providing a view on the bdict's keys.

Return type

AbstractSet[~KT]

values()

Returns an object providing a view on the bdict's values.

Return type

ValuesView[~VT]

class MutableBase(*args, **kwargs)[source]

Bases: DictWrapper[~KT, ~VT], MutableMapping[~KT, ~VT]

Abstract Base Class for mutable dictionaries.

Used by NonelessDict and NonelessOrderedDict.

Custom subclasses must implement at a minimum __init__, copy, fromkeys.

Methods:

__contains__(key)

Return key in self.

__delitem__(key)

Delete self[key].

__eq__(other)

Return self == other.

__getitem__(key)

Return self[key].

__iter__()

Iterates over the dictionary’s keys.

__len__()

Returns the number of keys in the dictionary.

__repr__()

Return a string representation of the DictWrapper.

__setitem__(key, value)

Set self[key] to value.

clear()

copy(*args, **kwargs)

Return a copy of the dictionary.

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

get(k[, default])

Return the value for k if k is in the dictionary, else default.

items()

Returns a set-like object providing a view on the bdict's items.

keys()

Returns a set-like object providing a view on the bdict's keys.

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

Returns an object providing a view on the bdict's values.

__contains__(key)

Return key in self.

Parameters

key (object)

Return type

bool

__delitem__(key)[source]

Delete self[key].

__eq__(other)

Return self == other.

Return type

bool

__getitem__(key)

Return self[key].

Parameters

key (~KT)

Return type

~VT

__iter__()

Iterates over the dictionary’s keys.

Return type

Iterator[~KT]

__len__()

Returns the number of keys in the dictionary.

Return type

int

__repr__()

Return a string representation of the DictWrapper.

Return type

str

__setitem__(key, value)[source]

Set self[key] to value.

clear() → None. Remove all items from D.
abstract copy(*args, **kwargs)

Return a copy of the dictionary.

Return type

~_D

classmethod fromkeys(iterable, value=None)[source]

Create a new dictionary with keys from iterable and values set to value.

Return type

MutableBase[~KT, ~VT]

Overloads
  • fromkeys(iterable ) -> MutableBase[KT, Any]

  • fromkeys(iterable, value ) -> MutableBase[KT, VT]

get(k, default=None)

Return the value for k if k is in the dictionary, else default.

Parameters
  • k – The key to return the value for.

  • default – The value to return if key is not in the dictionary. Default None.

items()

Returns a set-like object providing a view on the bdict's items.

Return type

AbstractSet[Tuple[~KT, ~VT]]

keys()

Returns a set-like object providing a view on the bdict's keys.

Return type

AbstractSet[~KT]

pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem() → (k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d]) → D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F) → None. Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

Returns an object providing a view on the bdict's values.

Return type

ValuesView[~VT]