scalarstop._attr_dict

Tools for simulating dataclasses without having to specify all of the parameter types.

Module Contents

Classes

AttrDict

A dictionary subclass that allows accessing dictionary keys as parameters.

class AttrDict

Bases: dict

A dictionary subclass that allows accessing dictionary keys as parameters.

This is useful for providing an interface similar to a HyperparamsType instance, but without having to know the keys and values ahead of time.

AttrDict subclasses dict so it can be serialized to JSON.

Examples:

>>> d = AttrDict(a=1, b=2)
>>> d
{'a': 1, 'b': 2}
>>> d["a"]
1
>>> d.a
1
>>> d["b"]
2
>>> d.b
2

Initialize self. See help(type(self)) for accurate signature.

clear()

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

copy()

D.copy() -> a shallow copy of D

get()

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

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()

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()

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()

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

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