
“在 Python 里,空格不是用来凑数的,是用来定义逻辑的。”
很多刚从 Java、C++ 转过来的新手,第一次写 Python 时都会被一个看似“较真”的错误打懵:
IndentationError: expected an indented block
没错——Python 对缩进有严格要求。它不用大括号 {} 划分代码块,而是靠缩进来表达层级关系。这既是它的简洁之处,也是新手最容易栽跟头的地方。
今天,我们就用 3 组实战对比案例,带你彻底搞懂 Python 的“排版规则”。
🔍 案例一:缩进错了?程序直接报错!
❌ 错误示范(反面教材)
age = 18if age >= 18:print("你已经成年了") # 错误1:没缩进!Python 不知道这行属于 if print("可以去网吧了") # 错误2:缩进了,但和上一行没对齐
💥 运行结果:IndentationError: expected an indented block
解释:冒号 : 后必须立刻缩进(通常 4 个空格),且同一代码块内所有语句必须严格对齐。
✅ 正确示范(正面教材)
age = 18if age >= 18: print("恭喜你,成年了!") print("你的世界变大了。")print("程序运行结束。") # 无缩进 → 已跳出 if 块
✅ 关键原则:
同一层级代码必须完全对齐(推荐统一用 4 个空格);
📌 小贴士:VS Code / PyCharm 会自动帮你处理缩进,但别混用 Tab 和空格!
💡 案例二:注释不只是“解释”,更是“调试开关”!
很多人以为注释就是写说明,其实它还能当“代码开关”用!
📜 基础用法
单行注释:像便利贴,随手记
defsay_hello():""" 多行注释(文档字符串): - 功能:打印问候语 - 作者:你的名字 """ print("Hello!")
🔧 实战技巧:用注释临时“关闭”代码
x = 10y = 0# print(x / y) # 注释掉会报错的代码,程序就能正常运行print(x + y) # 安全执行
✅ 调试时不用删代码,注释掉就行——改完还能一键恢复!
🚀 高级彩蛋:Shebang(专业感拉满)
#!/usr/bin/env python3print("这是一个专业的脚本文件")
这行告诉 Linux:“请用 python3 来运行我!”
💡 虽然 Windows 不认这行,但在 Linux/macOS 上部署脚本时,它是标配!
🧠 案例三:变量不是“盒子”,而是“标签”!
在 C/Java 中,变量像固定大小的盒子;但在 Python 里,变量只是贴在对象上的标签,可以随时“撕下来贴到别的东西上”。
🏷️ 动态类型演示(变身魔术)
money = 100print(f"现实:你有 {money} 块钱")money = "一百万"# 变成字符串!print(f"梦想:你有 {money}")money = [1, 5, 10] # 再变成列表!print(f"钱包里的纸币:{money}")
✅ 在 Python 中,变量没有固定类型,值才有类型。这是“动态语言”的核心魅力!
📏 命名规范:写出 Pythonic 的代码
虽然下面这些写法不报错,但会被 Python 老手“暗中嫌弃”:
🚫 不推荐(非 Python 风格)
# 🚫 不推荐(非 Python 风格)MyName = "Tony"# Java 风(大驼峰)myName = "Tony"# JavaScript 风(小驼峰)n = "Tony"# 懒人风(谁看得懂?)# ✅ 推荐写法:蛇形命名法(snake_case)my_name = "Tony"user_age = 25is_logged_in = Truemax_retry_count = 3
✅ 推荐写法:蛇形命名法(snake_case)
🐍 这是 PEP 8(Python 官方编码规范)明确推荐的方式——清晰、一致、易读!
✅ 总结:Python 的“排版讲究”,其实是对清晰的执着
“Beautiful is better than ugly.”
“Readability counts.”
所以,别抱怨它的“严格要求”——正是这份对整洁的坚持,让 Python 成了全球最易读的语言之一。
📌 转发+在看,让更多新手少走弯路!
(注:文档部分内容可能由 AI 生成)