PyCharm 2026.1 Help

パターンマッチング

PyCharm は、 パターンマッチングのサポートを提供します。これは PEP-634PEP-635PEP-636で導入され、Python 3.10 以降で利用できます。

パターンマッチングは、関連するアクションを伴うパターンの match ステートメントおよび case ステートメントの形式で追加されました。

match subject: case <pattern_1>: <action_1> case <pattern_2>: <action_2> case <pattern_3>: <action_3> case _: <action_wildcard>

パターンは、シーケンス、マッピング、プリミティブデータ型、およびクラスインスタンスで構成されます。 パターンマッチングにより、複雑なデータ型、データ構造に関するブランチから情報を抽出し、さまざまな形式のデータに基づいて特定のアクションを適用できます。 例と使用例の詳細については、 docs.python.org の機能の概要(英語)および PEP-636 (チュートリアル)(英語) を参照してください。

PyCharm は、パターンマッチングのために次のコーディング支援を提供します:

構文ハイライト

PyCharm は、マッチング構文の解析とハイライトをサポートします。

パターンマッチング: リテラル

デフォルトのコードスタイルを変更するには、 Ctrl+Alt+S を押して設定を開き、 エディター | コードスタイル | Python を選択します。 詳細については、 コードスタイルの構成 を参照してください。

キーワード補完

matchcase など、パターンマッチング用の特定のキーワードを入力し始めると、PyCharm が素早く編集できる補完リストを表示します:

キーワード補完

PyCharm のコード補完の詳細については、 コード補完 を参照してください。

コードインスペクション

PyCharm で利用可能な コードインスペクションを使うことで、パターンマッチング構文内の問題箇所を検出できます。

コードインスペクションを構成するには、 Ctrl+Alt+S を押して設定を開き、 エディター | コードスタイル | Python を選択してから、編集するインスペクションを見つけて変更を適用します。 詳細については、 インスペクションの重大度を変更する および インスペクションの無効化と有効化 を参照してください。

到達不能コード​.

PyCharm は、実行中にコード要素に到達できない場合に警告を表示します。 パターンマッチング構造では、複数のパターンが定義されているものの、そのうちの 1 つがすでにすべての入力に一致し、その下のパターンに到達できない場合に、この警告が発生します。

到達不可能なコードもエディターで灰色でハイライトされます。

パターンマッチングで到達不能コード

    再宣言された変数

    パターンマッチングで使用される変数名を宣言すると、PyCharm がそれをハイライトして警告を表示します。 これは、変数名が割り当てであり、以前の値が考慮されていないために発生します。

    パターンマッチングで再宣言された変数
      2026 年 6 月 1 日