tf_agents.utils.object_identity.ObjectIdentityDictionary

View source on GitHub

A mutable mapping data structure which compares using "is".

This is necessary because we have trackable objects (_ListWrapper) which have behavior identical to built-in Python lists (including being unhashable and comparing based on the equality of their contents by default).

Methods

__contains__

__eq__

Return self==value.

__getitem__

View source

__iter__

View source

__len__

View source

clear

D.clear() -> None. Remove all items from D.

get

D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.

items

D.items() -> a set-like object providing a view on D's items

keys

D.keys() -> a set-like object providing a view on D's keys

pop

D.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

D.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is empty.

setdefault

D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D

update

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

D.values() -> an object providing a view on D's values