#Python
117 件の記事
Python自動化 #5 結果を知らせる — メール・Slack・Discord通知
自動化の最後のピースは報告です。Slack・Discord の Webhook に httpx の POST 1 回で通知を送り、smtplib で Excel 添付メールを送信し、トークンを .env に分離する方法まで整理します。

dataclass と __slots__
データを集めるクラスを短く安全に作るための @dataclass の全オプション — frozen、kw_only、field() と、メモリ節約ツールの __slots__ までを整理します。

DB 連携 — SQLAlchemy 2.x + Alembic
SQLAlchemy 2.x の新スタイル — Mapped/mapped_column、async セッション、FastAPI 依存性注入との接続、Alembic のマイグレーションまでまとめます。

FastAPI のはじめ方とセットアップ
なぜ FastAPI なのか、uv で最初のプロジェクトをセットアップし、Hello FastAPI、OpenAPI/Swagger UI の自動生成までをまとめます。

GIL と並行性 — threading vs multiprocessing vs asyncio
GIL の正体、threading/multiprocessing/asyncio の 3 つの道具の分担、そして Python 3.13〜3.14 の free-threaded ビルド (PEP 703/779) までをまとめます。


Pydantic v2 の深層 — 検証、シリアライズ、カスタム validator
FastAPI の核である Pydantic を独立した章で掘り下げます。v2 の性能と API の変化、model_validator/field_validator の使いどころ、シリアライズ制御、JSON Schema 生成までを扱います。
Python自動化 #4 — Webスクレイピング ②: Playwright で動的ページを扱う
requests で取得すると空の HTML しか返ってこない JavaScript レンダリングページを Playwright で扱います。インストールと最初のスクリプトから、wait_for_selector による待機、ログイン自動化、無限スクロール、CSV 保存まで一気に整理します。

typing 上級 — Variance、ParamSpec、Self、overload
中級 typing の次の段階として、covariance/contravariance、ParamSpec と Concatenate、Self、TypeGuard/TypeIs、@overload までまとめます。

typing 本格 — Generic、Protocol、TypedDict、Literal
基礎の型ヒントの次の段階 — 型をパラメータ化する Generic、ダックタイピングを正確に書く Protocol、dict の形を明示する TypedDict、狭い union の Literal までを整理します。

uv でのライブラリ公開 — pyproject.toml と PyPI リリース
pyproject.toml の意味を一度に整理し、uv build・uv publish で最初のライブラリを PyPI にリリースする手順を扱います。