Lesson 123: collections.Counter, defaultdict, deque
Focus
Prints are breadcrumbs, not ornamentation: Intermediate drills collections.Counter, defaultdict, deque; spin token 1051975 makes this page unlike its neighbours.
Key ideas
- Angle
Intermediate: micro cadence3mixescollections.Counter, defaultdict, deque; spin82423. - Ritual: Mirror the snippet with reversed iteration order verbally.
- Guardrail: name the surprise that triggered when literals shifted.
Example (LESSON_UID = "intermediate-123")
# Intermediate drill L123 topic-12 micro-2 pattern-11
LESSON_UID = "intermediate-123"
spin_a, spin_b, spin_c = 721, 709, 814
bucket = dict(seed=2 + spin_a)
def tweak(offset):
local = bucket["seed"]
bucket["seed"] = local + offset
return bucket["seed"]
print(tweak(4), tweak(4), bucket)
from pathlib import Path
import tempfile
with tempfile.TemporaryDirectory() as scratch:
target = Path(scratch) / "scratch-123.txt"
snap = [136, 863, 599, 335, 71]
target.write_text("\n".join(str(x) for x in snap), encoding="utf-8")
print("scratch_bytes", target.stat().st_size, "rolling", sum(snap) % (814 + 131))
Practice
Practice 12: Stress CPU vs clarity trade verbally after micro timing guess. Literal nudge 12.
Fingerprints
- lesson_uid:
intermediate-123 - umbrella band:
collections.Counter, defaultdict, deque(3/10) - lesson_index:
3919