syncopy.shared.StructDict#

class syncopy.shared.StructDict(*args, **kwargs)[source]#

Child-class of dict for emulating MATLAB structs

Examples

cfg = StructDict() cfg.a = [0, 25]

__init__(*args, **kwargs)[source]#

Create a child-class of dict whose attributes are its keys (thus ensuring that attributes and items are always in sync)

Methods

__init__(*args, **kwargs)

Create a child-class of dict whose attributes are its keys (thus ensuring that attributes and items are always in sync)

clear()

copy([deep])

Create a copy of this StructDict instance.

deepcopy()

Return a deep copy of this StructDict.

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 the key is not found, return the default if given; otherwise, raise a KeyError.

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

__init__(*args, **kwargs)[source]#

Create a child-class of dict whose attributes are its keys (thus ensuring that attributes and items are always in sync)

copy(deep=True)[source]#

Create a copy of this StructDict instance.

Note: Overwrites the .copy method of the parent dict class, otherwise copy() will return a dict instead of a StructDict.

Parameters:

deep (bool) – Whether to produce a deep copy. Defaults to True.

Return type:

Copy of StructDict.

deepcopy()[source]#

Return a deep copy of this StructDict.

Notes

Call the .copy() method instead to get a shallow copy, though that seems rather uncommon.

clear() None.  Remove all items from D.#
fromkeys(value=None, /)#

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

get(key, default=None, /)#

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

items() a set-like object providing a view on D's items#
keys() a set-like object providing a view on D's keys#
pop(k[, d]) v, remove specified key and return the corresponding value.#

If the key is not found, return the default if given; otherwise, raise a KeyError.

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(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([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() an object providing a view on D's values#