summaryrefslogtreecommitdiff
path: root/3 Resources/Python/Make dataclass dict-able.md
diff options
context:
space:
mode:
Diffstat (limited to '3 Resources/Python/Make dataclass dict-able.md')
-rw-r--r--3 Resources/Python/Make dataclass dict-able.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/3 Resources/Python/Make dataclass dict-able.md b/3 Resources/Python/Make dataclass dict-able.md
new file mode 100644
index 0000000..d8ee02b
--- /dev/null
+++ b/3 Resources/Python/Make dataclass dict-able.md
@@ -0,0 +1,15 @@
+---
+tags:
+ - python
+ - "#how-to"
+references:
+ - https://docs.python.org/3/library/functions.html#vars
+ - https://docs.python.org/3/reference/datamodel.html#object.__iter__
+---
+The `dict` method takes kwargs and creates a dict from that. If we want to pass an object into it the object implement the `__iter__` method.
+We can use `vars` to make that easy:
+```
+def __iter__(self):
+ for k, v in vars(self):
+ yield k, v
+``` \ No newline at end of file