Skip to content

缩进

一句话解释

缩进是 Python 用行首空格数来表示代码块归属的语法机制,是语法的一部分,必须统一。

用大白话说

Python 最特别的地方:用缩进表示代码块。其他语言用花括号 {} 包代码块,Python 用行首的空格数——同一层级的语句缩进相同,属于同一个代码块。

if age >= 18:
    print("已成年")      # 缩进 4 空格,属于 if
    print("可以投票")     # 同样 4 空格,也属于 if
print("无论如何都执行")   # 顶格,不属于 if

缩进的几个关键点:

  • 是语法的一部分:缩进错了直接报错(IndentationError),不像其他语言只是风格问题
  • 必须统一:同一个代码块里所有语句缩进必须完全一样
  • 空格数不限:习惯用 4 个空格,但 2 个、8 个都行,只要统一
  • 别混用空格和 Tab:会报错,建议统一用空格

缩进让 Python 代码看起来干净、像伪代码,但也容易因为多敲少敲一个空格就出错。初学者遇到 IndentationError 先检查缩进是否一致。

示例

python
if True:
    print("属于 if")     # 4 空格缩进
    print("也属于 if")   # 同样 4 空格
print("不属于 if")       # 顶格

# 缩进不一致会报错:
# if True:
#     print("a")
#      print("b")  # ❌ IndentationError

Python 用缩进表示代码块归属。同一块里所有语句缩进必须一致,不一致会报 IndentationError。

工作原理

  1. 每行开头的空格数决定该行属于哪个代码块
  2. 缩进比上一行多,表示进入更深的嵌套块
  3. 缩进回到之前的层级,表示退出该块
  4. 同一块内所有语句缩进必须完全相同,否则报错

常见混淆

  • 容易混淆的对象: 花括号

    关键区别: 其他语言用 {} 包代码块(缩进只是风格),Python 用缩进表示代码块(是语法)。Python 没有 {},缩进错了直接报错。

相关术语

相关资源

相关课程

学习基础知识

通过结构化课程深入理解这个主题。

查看课程

解读错误信息

用大白话解释常见错误——什么意思、为什么发生、如何修复。

查看错误

← 返回术语表