StructDict
StructDict#
- class syncopy.StructDict(*args, **kwargs)[source]#
Bases:
dict
Child-class of dict for emulating MATLAB structs
Examples
cfg = StructDict() cfg.a = [0, 25]
Methods Summary
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
()Methods Documentation
- clear() None. Remove all items from D. #
- 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.
- 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 #
- __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 #