PyCharm 2025.2 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 会在某个代码元素在执行期间无法访问时显示警告。 在模式匹配结构中,这通常发生在定义了多个模式的情况下,但其中某个模式已能匹配所有可能的输入 —— 使其下方的模式无法访问。

在编辑器中,不可访问的代码也会以灰色突出显示。

模式匹配中的不可达代码

    重新声明的变量

    当您声明一个在模式匹配中使用的变量名时,PyCharm 会高亮显示并提示警告。 这是因为变量名是赋值操作,其先前的值不会被考虑。

    模式匹配中的变量重新声明
      最后修改日期: 2025年 9月 26日