首先统一缩进风格,检查并转换空格与制表符,推荐使用4个空格;接着开启显示空白字符,通过小点和箭头识别混用问题;然后配置Sublime设置tab_size为4并启用translate_tabs_to_spaces;最后安装SublimeLinter与flake8实现实时语法检查,确保代码符合PEP 8规范,从而有效避免IndentationError。

Sublime中运行Python代码时出现缩进错误(IndentationError),多数情况并非编辑器本身的问题,而是代码缩进不一致导致。虽然Sublime不会自动修复语法错误,但可以通过设置和插件帮助你快速定位并解决缩进问题。
检查空格与制表符是否混用
Python对缩进要求严格,空格(space)和制表符(tab)不能混用。Sublime默认可能使用tab或空格,若项目中两者混杂,容易引发IndentationError。
- 打开Python文件,在右下角查看当前缩进方式(显示为“Tab Size: 4”或“Spaces: 4”)
- 点击右下角缩进标识,选择Convert Indentation to Spaces或Convert Indentation to Tabs统一格式
- 推荐使用4个空格作为标准缩进(PEP 8规范)
开启显示空白字符辅助排查
通过显示空格和制表符,可直观看出缩进是否混乱。
- 菜单栏选择 View → Show White Space
- 或在用户设置中添加:"draw_white_space": "all"
- 此时空格显示为小点,制表符显示为箭头,便于识别异常缩进
配置Sublime自动使用4空格缩进
避免后续文件再出现缩进问题,建议设置Python文件默认使用4个空格。
立即学习“Python免费学习笔记(深入)”;
- 打开 Preferences → Settings
- 在右侧用户设置中加入以下内容:
这样新建或打开Python文件时,都会强制使用4个空格,且按Tab键会自动转为空格。
使用SublimeLinter配合flake8检查缩进
安装代码检查工具,实时提示缩进和其他语法问题。
- 通过Package Control安装SublimeLinter和SublimeLinter-flake8
- 确保系统已安装flake8:pip install flake8
- 保存文件时,错误缩进会以红线标出,如E111(缩进不是4的倍数)、E101(混用空格和tab)
基本上就这些。只要统一缩进风格、开启可视化空白字符、配合语法检查,Sublime就能高效避免Python缩进报错。关键不是工具,而是保持代码格式一致性。










