Was, wenn alles ein dict wäre?
,Shownotes
Unsere E-Mail für Fragen, Anregungen & Kommentare: hallo@python-podcast.de
GitHub Copilot / Pi
- GitHub Copilot
- #234 – Stephen Wolfram: Complexity and the Fabric of Reality
- Transzendente Zahl | Beweis
- The Tau Manifesto
- We Now Know 62.8 Trillion Digits of Pi
- Freunde der Zahl Pi
News aus der Szene
Dicts
- Dictionaries
- Big O notation
- defaultdict
- „Fortunately, this situation is common enough that Python has another built-in solution. You can subclass the dict type and implement the __missing__ special method to add custom logic for handling missing keys. Here, I do this by defining a new class that takes advantage of the same open_picture helper method defined above:“
Auszug aus
Effective Python: 90 Specific Ways to Write Better Python, Second Edition (Jochen Wersdörfer's Library)
Brett Slatkin
Dieses Material ist möglicherweise urheberrechtlich geschützt. - OrderedDict | UserDict
- PEP 584 -- Add Union Operators To dict
- dataclasses | namedtuple | attrs | pydantic
- __slots__
- Counter
- ChainMap
- Casey Muratori auf Youtube
- The Billion Dollar Code
- Covid Dashboard (Pavel Mayer)
- collections.abc — Abstract Base Classes for Containers
- Python Distilled
Niko on 25. November 2021 14:48
Moin,
entweder hab ich euch im Chaos um setdefault falsch verstanden oder euch ist ein kleiner Fehler beim Thema "defaultdict" unterlaufen.
Bei "defaultdict" wird der default in das dict eingetragen beim Zugriff:
>>> x = defaultdict(int)
>>> x
defaultdict(<class 'int'>, {})
>>> x[1]
0
>>> x
defaultdict(<class 'int'>, {1: 0})
Jochen Wersdörfer on 25. November 2021 16:51
Hallo Niko,
oh - kann gut sein, dass uns da etwas durcheinander geraten ist. Ich muss da nachher nochmal reinhören. Verwirrend bei setdefault finde ich, dass das den value halt nur setzt, wenn der key nicht drin ist und ansonsten ein get macht. Aber der default wird in jedem Fall instanziiert, egal ob man ihn dann braucht oder nicht. Irgendwie ist diese Funktion einfach etwas unglücklich (auch wenn ich sie früher sehr oft verwendet habe und auch heute noch manchmal aus alter Gewohnheit :)).
Johannes on 25. November 2021 17:01
Stimmt, da haben wir einen Fehler gemacht. Danke für das Ausprobieren und die Korrektur!