MyPy、Python 3.9 互換性、ノートブックなど各種エラーを修正するパターン集
各種エラーを効率的に修正するためのスキル。
| タイプ | 説明 | 詳細 |
|---|---|---|
| MyPy | 静的型解析エラー | reference/mypy.md |
| Python 3.9 | レガシー Python 互換性 | reference/python39.md |
| Notebooks | ノートブック実行エラー | reference/notebooks.md |
# エラーを確認
mypy gwexpy/
# 特定のファイル
mypy gwexpy/types/array.py
よくあるパターン:
# type: ignore[misc] - 多重継承の競合cast(Type, value) - 型の明示的変換Protocol - Mixin の safe-super 対応# NG: Python 3.9 では実行時エラー
MyType: TypeAlias = A | B
# OK: Union を使用
from typing import Union
MyType: TypeAlias = Union[A, B]
# セルを個別に確認
jupyter nbconvert --to notebook --execute notebook.ipynb
# JSON スキーマの修正
python -c "import json; d = json.load(open('nb.ipynb')); json.dump(d, open('nb.ipynb', 'w'), indent=1)"
エラーの特定
修正の適用
# type: ignore を追加検証
type: ignore は最後の手段)