scvi.utils.attrdict#

class scvi.utils.attrdict(*args, recursive=False, **kwargs)[source]#

A dictionary that allows for attribute notation (e.g. d.element).

Parameters:
recursive : bool (default: False)

If True, recursively converts nested dictionaries into attrdict objects.

Notes

Based off of https://stackoverflow.com/questions/38034377/object-like-attribute-access-for-nested-dictionary.

Methods table#

clear()

copy()

fromkeys([value])

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

get(key[, default])

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

items()

keys()

pop(k[,d])

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

popitem()

Remove and return a (key, value) pair as a 2-tuple.

setdefault(key[, default])

Insert key with a value of default if key is not in the dictionary.

update([E, ]**F)

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

values()

Methods#

clear#

attrdict.clear() None.  Remove all items from D.#

copy#

attrdict.copy() a shallow copy of D#

fromkeys#

attrdict.fromkeys(value=None, /)#

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

get#

attrdict.get(key, default=None, /)#

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

items#

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

keys#

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

pop#

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

attrdict.popitem()#

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault#

attrdict.setdefault(key, default=None, /)#

Insert key with a value of default if key is not in the dictionary.

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

update#

attrdict.update([E, ]**F) None.  Update D from dict/iterable E and F.#

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

values#

attrdict.values() an object providing a view on D's values#