重新格式化并重排代码
PyCharm 可根据您在当前 代码样式方案 或 .editorconfig 文件中指定的要求重新格式化代码。 如果在 .editorconfig 中未定义某些内容,则会从项目设置中获取。
您可以重新格式化部分代码、整个文件、文件组、目录以及模块。 您还可以将部分代码或某些文件排除在重新格式化之外。 PyCharm 遵循 PEP 8 规则与要求,用于排列并格式化 Python 代码。
重新格式化代码片段
在编辑器中,选择要重新格式化的代码片段。
在重新格式化之前,您可以查看应用于所选代码的代码风格设置:按 Alt+Enter 并点击 调整代码样式设置。
在主菜单中,转到 ,或按 Ctrl+Alt+L。
或者,在出现的 工具栏 上,点击
重新格式化代码。
重新格式化文件
您可以在编辑器中打开文件并按 Ctrl+Alt+Shift+L ,或者在 项目 工具窗口中,右键点击该文件并选择 。
在打开的 重新格式化文件 对话框中,如有需要,选择以下重新格式化选项:
优化导入 :如果您希望删除未使用的导入、添加缺失的导入或整理导入语句,请选择此选项。
重排条目 :如果您需要根据代码风格设置中指定的 排列规则 重排您的代码,请选择此选项。
代码清理 :选择此选项可运行代码清理检查。
不保留换行符 :根据代码风格设置重新格式化换行。 仅当 已针对 中的当前语言启用时,此选项才可用。 如果选择 不保留换行符 ,IDE 会临时重写该设置,并根据当前代码样式移除现有换行。
还可以使用 再次重新格式化以移除自定义换行 选项,该选项位于 中。
单击 运行。
如果您希望查看重新格式化期间对代码所做的具体更改,请使用 本地历史 功能。
重新格式化行缩进
您可以根据指定设置重新格式化行缩进。
在编辑器中,选择所需的代码片段并按 Ctrl+Alt+I。
如果您需要调整缩进设置,请在 设置 对话框(Ctrl+Alt+S )中,转到 。 选择您要更改缩进的语言。
在 制表符和缩进 选项卡上,指定相应的缩进选项并点击 确定。
保存时自动重新格式化代码
您可以将 IDE 配置为在您的更改 保存 时自动重新格式化已修改文件中的代码。
按下 Ctrl+Alt+S 以打开设置,然后选择 。
启用 重新格式化代码 选项。
此外,您可以配置 IDE 重新格式化代码的方式:
点击 配置作用域… ,指定您希望 从重新格式化中排除的文件名和目录模式。
在 所有文件类型 列表中,选择您希望重新格式化代码的文件类型。
如果项目受版本控制,请选择 整个文件 或 更改的行。
如果您选择 更改的行 ,将仅对本地已更改但尚未检入存储库的代码行应用重新格式化。
提交时重新格式化代码
如果项目受 版本控制 ,您可以在将更改提交到存储库时自动重新格式化代码。 在这种情况下,仅会重新格式化新增或修改的代码。
按 Alt+0 打开 提交 工具窗口,然后点击 显示提交选项
。
在 提交检查 菜单中,启用 重新格式化代码 选项。
启用该选项后,每次执行提交时,新增或修改的代码都会被重新格式化。

将文件排除在重新格式化之外
您可以从重新格式化、 代码排列和 导入优化中排除一组文件和目录。
在 设置 对话框(Ctrl+Alt+S ),转到 。
切换到 格式化程序 选项卡,在 不设置格式 字段中,使用 glob 模式输入您想要排除的文件和目录。
您可以指定多个 glob 模式,并用分号
;分隔。 如果您点击,该字段将展开,每个模式将显示在单独的行上。
应用更改并关闭对话框。

在编辑器中将代码片段排除在重新格式化之外
在 设置 对话框(Ctrl+Alt+S ),转到 。
切换到 格式化程序 选项卡,并启用 通过代码注释中的标记打开/关闭格式化程序 选项。
在编辑器中,在您要排除的区域的开头,创建一行注释 Ctrl+/ ,并键入
@formatter:off。 在该区域的末尾,创建另一行注释并键入@formatter :on。标记之间的代码将不会被重新格式化。
保留现有格式设置
您可以选择在重新格式化代码时将被忽略的格式规则。 例如,您可以将 IDE 调整为将简单的方法和函数保留在一行,而通常在代码重新格式化后它们会展开为多行。
在主菜单中,转到 ,选择您的编程语言,并打开 换行和大括号 选项卡。
在 重新设置代码格式时保留 部分,选择希望 IDE 在重新格式化期间保留的现有格式设置类型。 清除希望 IDE 根据当前代码样式应用的格式设置所对应的复选框。
Reformat your code (Ctrl+Alt+L).
PyCharm 将根据当前风格设置重新格式化您的代码,同时对您选择的规则保留现有格式。
重新排列代码
您可以根据 设置 对话框的 代码风格 页面上设置的排列规则重排代码。
重排代码条目
在 设置 对话框(Ctrl+Alt+S )中,转到 。
选择您要为其创建排列规则的语言。
在 排列 选项卡上,指定相应的选项,例如分组与匹配规则。
点击 确定 以保存更改。
在编辑器中,选择要重排的代码条目,然后在主菜单中转到 。