wulfric.SyntacticSugar#
- class wulfric.SyntacticSugar[source]#
Syntactic sugar for any dictionary.
This class does only one thing. It allows to write
atoms.namesinstead ofatoms["names"]orspglib_data.numberinstead ofspglib_data["number"].Examples
Two code examples below give equivalent result
>>> import wulfric >>> atoms = wulfric.SyntacticSugar() >>> atoms.names = ["Cr1", "Cr2"] >>> atoms.positions = [[0, 0, 0], [0.5, 0.5, 0.5]] >>> atoms {'names': ['Cr1', 'Cr2'], 'positions': [[0, 0, 0], [0.5, 0.5, 0.5]]}
>>> import wulfric >>> atoms = {} >>> atoms["names"] = ["Cr1", "Cr2"] >>> atoms["positions"] = [[0, 0, 0], [0.5, 0.5, 0.5]] >>> atoms {'names': ['Cr1', 'Cr2'], 'positions': [[0, 0, 0], [0.5, 0.5, 0.5]]}
Methods:
clear()copy()fromkeys(iterable[, 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(key[, default])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()