schrodinger.application.matsci.qexsd.qespresso.utils.mapping module¶
Useful classes for building mapping structures.
-
class
schrodinger.application.matsci.qexsd.qespresso.utils.mapping.
BiunivocalMap
(*args, **kwargs)¶ Bases:
collections.abc.MutableMapping
A dictionary that implements a bijective correspondence, namely with constraints of uniqueness both on keys that on values.
-
__init__
(*args, **kwargs)¶ Initialize self. See help(type(self)) for accurate signature.
-
__len__
()¶
-
__contains__
(key)¶
-
copy
()¶
-
classmethod
fromkeys
(iterable, value=None)¶
-
getkey
(value, default=None)¶ If value is in dictionary’s values, return the key correspondent to the value, else return None.
Parameters: - value – Value to map
- default – Default to return if the value is not in the map values
-
inverse
()¶ Return a copy of the inverse dictionary.
-
clear
() → None. Remove all items from D.¶
-
get
(k[, d]) → D[k] if k in D, else d. d defaults to None.¶
-
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 key is not found, d is returned if given, otherwise KeyError is raised.
-
popitem
() → (k, v), remove and return some (key, value) pair¶ as a 2-tuple; but raise KeyError if D is empty.
-
setdefault
(k[, d]) → D.get(k,d), also set D[k]=d if k not in D¶
-
update
([E, ]**F) → None. Update D from mapping/iterable E and F.¶ If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
-
values
() → an object providing a view on D's values¶
-