summaryrefslogtreecommitdiff
path: root/3 Resources/Python/Make dataclass dict-able.md
diff options
context:
space:
mode:
authorJasper Ras <jras@hostnet.nl>2025-01-19 21:14:51 +0100
committerJasper Ras <jras@hostnet.nl>2025-01-19 21:14:51 +0100
commit9642cd7ae24f0ba79ce5647c709b35ae8f06a285 (patch)
treeae25c3b0db7ae4c23186b294c6d000073f085c2d /3 Resources/Python/Make dataclass dict-able.md
parent969b96c2531fb986f6c7f21fd544391b439defd7 (diff)
vault backup: 2025-01-19 21:14:51
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