summaryrefslogtreecommitdiff
path: root/3 Resources/Python
diff options
context:
space:
mode:
authorJasper Ras <jras@hostnet.nl>2025-03-20 11:07:49 +0100
committerJasper Ras <jras@hostnet.nl>2025-03-20 11:07:49 +0100
commit80ccf68f55dbb70d7e5ed52ee95b3c9d1b6ce264 (patch)
tree93e28e85ab70052aa6f577998ec7dc1f413b40c0 /3 Resources/Python
parent9642cd7ae24f0ba79ce5647c709b35ae8f06a285 (diff)
vault backup: 2025-03-20 11:07:48
Diffstat (limited to '3 Resources/Python')
-rw-r--r--3 Resources/Python/Make dataclass dict-able.md5
-rw-r--r--3 Resources/Python/Python dunder.md6
2 files changed, 11 insertions, 0 deletions
diff --git a/3 Resources/Python/Make dataclass dict-able.md b/3 Resources/Python/Make dataclass dict-able.md
index d8ee02b..7cb391b 100644
--- a/3 Resources/Python/Make dataclass dict-able.md
+++ b/3 Resources/Python/Make dataclass dict-able.md
@@ -12,4 +12,9 @@ We can use `vars` to make that easy:
def __iter__(self):
for k, v in vars(self):
yield k, v
+```
+
+> This only works when all vars are primtiives, a list of objects for example needs nested iteration. Example:
+```
+yield "volumes", [iter(vol) for vol in self.volumes]
``` \ No newline at end of file
diff --git a/3 Resources/Python/Python dunder.md b/3 Resources/Python/Python dunder.md
new file mode 100644
index 0000000..ca24307
--- /dev/null
+++ b/3 Resources/Python/Python dunder.md
@@ -0,0 +1,6 @@
+---
+tags:
+ - python
+---
+Everything in python is an object, even strings, functions etc.
+all operations are defined as dunder methods; eg "bla" + "bla" == str.\_\_add\_\_