Python
- Python Python の GIL 実測:スレッド・プロセス・asyncio の使い分け CPU処理とI/O待ちをスレッド・プロセス・asyncioで1〜8ワーカー実測。macOSのspawnで落ちる理由、Lockで直す競合状態、イベントループを510ms止めたブロッキング呼び出しと判断表まで。
- Python Python のプロファイリング実測:本当に速くなった最適化 遅い単語カウンターを timeit・cProfile・tracemalloc で計測し、4.39秒から31msまで段階的に改善。属性への str += が二乗になる罠と、実測では効かなかった定番の高速化も示します。
- Python Pythonのイテレータとジェネレータ:メモリ実測と使い切りの罠 __iter__/__next__ の自作からジェネレータ、yield from、itertools まで。2回目のループが空になる罠と、390 MiB 対 0.3 KiB のメモリ実測。
- Python Pythonの関数:スコープ・デフォルト引数の罠・クロージャを実行結果で *args・**kwargs、/ と *、ミュータブルなデフォルト引数の罠、LEGB と UnboundLocalError、ループ内 lambda、3.11 の match、関数呼び出しのコストを実行結果で整理。
- Python Pythonデコレータとコンテキストマネージャ:wraps・lru_cache・with 計測・リトライ・キャッシュのデコレータを自作し、functools.wraps がないと何が壊れるか、lru_cache で fib が約3万倍速くなる実測、with と ExitStack まで。
- Python Pythonの型とミュータブル:名前・コピー・isと==を実行結果で理解 0.1+0.2が0.3にならない理由、リストの別名と[[0]*3]*3の罠、copyとdeepcopy、isと==、本物のトレースバックと実測コストをPython 3.9・3.11で確認。