language
Python
汎用プログラミング言語
問題一覧(22)
Python の asyncio で「RuntimeError: Event loop is closed」が解消できない
RuntimeError: Event loop is closed は asyncio のイベントループを閉じた後にコルーチンやコールバックが実行されようとした際に発生します。asyncio.run() に任せ、Windows では WindowsSelectorEventLoopPolicy に切り替えるのが定番の対処です。
更新: 2026-08-02、タグ: asyncio、event-loop、runtimeerror
python コマンドが「command not found」で実行できない
多くの環境で実体は python3 のみで python が無い、PATH が通っていない、Windows ではストアのエイリアスが横取りする、が主因。python3 で呼ぶか PATH を通すのが基本対応。
更新: 2026-08-02、タグ: path、command-not-found、python3
Python で「coroutine was never awaited」の警告が出て非同期処理が実行されない
async 関数は呼び出しただけでは実行されず、コルーチンオブジェクトを返すだけである。await するか asyncio でスケジュールすると解決する。
更新: 2026-07-29、タグ: asyncio、coroutine、await
Python import できない(ModuleNotFoundError)
ModuleNotFoundError は「使っている Python と pip install 先が別」「PYTHONPATH の通っていないディレクトリ」「相対 import の記法ミス」のいずれかが原因。
更新: 2026-08-02、タグ: import、pip、venv
Python の IndentationError: unexpected indent が直せない
IndentationError はインデントの幅が前後の行と揃っていない、あるいはタブと空白が混在しているときに出る。PEP 8 のとおりスペース 4 個に統一し、エディタの可視化機能で混入を見つけるのが最短ルート。
更新: 2026-08-02、タグ: IndentationError、syntax、indent
Python で「json.decoder.JSONDecodeError: Expecting value」が解消できない
JSONDecodeError: Expecting value: line 1 column 1 (char 0) は、空文字列や JSON でない文字列を json.loads() に渡したときに出る。まずデコード対象の中身を確認するのが近道。
更新: 2026-06-19、タグ: json、jsondecodeerror、exception
Python の dict アクセスで KeyError が解消できない
KeyError は dict に存在しないキーを d[key] で参照したときに発生する。事前チェックなら if key in d、デフォルト値を返すなら d.get(key, default)、欠落キーを許容したいなら collections.defaultdict を使い分ける。スペース・改行・大文字小文字違いが原因のことも多い。
更新: 2026-08-02、タグ: dict、keyerror、exception
Python で「'NoneType' object has no attribute」が解消できない
AttributeError の対象が NoneType の場合、メソッドの戻り値や辞書の get、ライブラリ API が想定外に None を返している。値が None である可能性を設計で潰すか、is None で早期判定してから属性アクセスする。
更新: 2026-08-02、タグ: attributeerror、nonetype、exception
pip install で wheel のビルドに失敗する
wheel が公開されていない sdist は手元でビルドが走るため、C / Rust 拡張に必要なコンパイラやヘッダが揃っていないと失敗する。ビルドツールチェインを入れる、wheel が出ている Python に合わせる、setuptools / pip を更新するで切り分ける。
更新: 2026-08-09、タグ: pip、wheel、build
pip install で「externally-managed-environment」エラーが解決できない
PEP 668 に従う Debian 12 / Ubuntu 23.04 以降や Homebrew Python は、システム環境への直接 pip install を禁止する。venv を作ってその中で入れるのが正攻法で、CLI ツールは pipx を使う。
更新: 2026-08-02、タグ: pip、venv、pep668
Python pip install が SSL 証明書エラーで失敗する
社内プロキシや古い Python の同梱証明書が原因で SSL 検証が失敗する。--trusted-host で逃がすより、まず CA 証明書と Python のバージョンを直す。
更新: 2026-06-22、タグ: pip、ssl、proxy
pip install で「No matching distribution found」が出てインストールできない
要求バージョンが PyPI に無い、現在の Python / OS / アーキ向けの wheel が無い、社内ミラー側に同期されていない、のいずれかが原因。pip index と pip debug で実在バージョンとサポート tag を確認する。
更新: 2026-08-02、タグ: pip、install、distribution
pip install が Permission denied で失敗する
システム Python のサイトパッケージは root 所有のため、ユーザ権限の pip install は書き込みに失敗する。venv を作るのが正攻法で、--user オプションや pipx も選択肢。sudo pip は環境破壊につながるため避ける。
更新: 2026-08-08、タグ: pip、permission、venv
pyenv で Python のバージョンが切り替わらない
pyenv local や pyenv global を実行しても python --version が変わらない時は、shim より前にシステム Python が PATH 解決されているか、shell の rc に pyenv init が書かれていないことが多い。rc と PATH を見直す。
更新: 2026-06-05、タグ: pyenv、version、shim
Python で「RecursionError: maximum recursion depth exceeded」が解決できない
再帰呼び出しが Python の既定上限(およそ1000)を超えたためです。多くは終了条件のミスによる無限再帰なので、まずベースケースを確認し、必要なら反復処理へ書き換えます。
更新: 2026-08-02、タグ: recursion、recursionerror、stack
Python で「attempted relative import with no known parent package」が解決できない
相対インポートを含むファイルをスクリプトとして直接実行すると、親パッケージを特定できずこのエラーになる。python -m パッケージ.モジュール で実行するか絶対インポートに変える。
更新: 2026-06-24、タグ: import、relative-import、package
Python で「TabError: inconsistent use of tabs and spaces in indentation」が直らない
同じブロックでタブとスペースが混在するとインデント幅が曖昧になり TabError になる。インデントをスペース 4 に統一し、エディタでタブをスペースに変換する。
更新: 2026-07-12、タグ: taberror、indentation、tabs
Python で datetime の naive と aware を比較できず TypeError になる
can't compare offset-naive and offset-aware datetimes は tzinfo の有無が違う datetime を比較・減算したときに起きる。両方を aware(zoneinfo / timezone.utc)に揃えると解決する。
更新: 2026-08-02、タグ: datetime、timezone、naive
Python で「TypeError: can only concatenate str (not "int") to str」が直らない
文字列に数値などを + で連結すると出る型エラー。数値側を str() で文字列化するか、f-string や print のカンマ区切りで組み立てる。
更新: 2026-07-14、タグ: typeerror、str、concatenation
Python で「UnicodeDecodeError」を解消できずファイルが読めない
テキストモードでファイルを開く際の既定エンコーディングが実ファイルと違うことが原因。open() に encoding 引数を明示するか、バイナリモードで読んで自前デコードすると解決する。
更新: 2026-08-02、タグ: unicode、encoding、file-io
Python で「too many values to unpack」が解決できない
ValueError: too many values to unpack (expected N) は、右辺の要素数が左辺の変数の数より多いときに出る。数を合わせるか、スター付き変数 *rest で残りをまとめて受け取る。dict のループや split の列数ずれが定番の原因。
更新: 2026-08-04、タグ: valueerror、unpacking、tuple
Python venv が activate できない(Windows PowerShell)
PowerShell の実行ポリシーがスクリプト実行を禁じていると Activate.ps1 が走らない。RemoteSigned に変更するか、cmd 用の activate.bat を使う。
更新: 2026-05-04、タグ: venv、activate、powershell
サンプルコード
エラーの解決ではなく「○○するには」の基本形を探しているときは、Python のサンプルコード一覧(15件)を参照するとよい。