掌握Python基础格式规范是编写高质量代码的第一步,本文详解缩进规则、注释方法及常见错误处理,帮助初学者快速避开语法陷阱。


一、Python程序基本格式规范

1. 缩进:Python的灵魂

强制规则:

  • ✅ 必须使用4个空格作为缩进单位(官方推荐)
  • ⚠️ Tab键需设置为4个空格(PyCharm默认设置)
  • ❌ 禁止空格Tab混用(导致IndentationError)
# 正确示例
if True:
    print("规范缩进")  # 4个空格缩进

# 错误示例
if True:
  print("混合缩进")   # 2个空格(错误)
	print("Tab缩进") # Tab键(错误)

PyCharm设置:
File → Settings → Editor → Code Style → Python
勾选 Use tab character 并设置 Tab size=4

2. 大小写敏感:严格区分
# 下列变量互不相同
name = "小王"
Name = "老王"
NAME = "局长"

# 类名首字母大写
class UserManager:  
    # 方法名全小写下划线
    def get_user_info(self):  
        # 常量全大写
        MAX_RETRY = 3  

二、注释的艺术:提升代码可读性

1. 单行注释(最常用)
# 计算商品折扣价格(井号后需空格)
discount_price = original_price * 0.8  

# 下方代码因需求变更暂时弃用
# deprecated_code()
2. 多行注释的三种形式
''' 
三单引号多行注释
常用于模块功能描述
例如:用户管理模块
'''

"""
三双引号多行注释
常用于类/函数文档字符串
(可通过__doc__属性访问)
"""

# 快捷键操作(PyCharm)
# 选中多行 → Ctrl+/(Windows)或 Cmd+/(Mac)
3. 注释本质揭秘
'''
该字符串未被变量引用
解释器会直接忽略
'''
doc_str = "这是真实字符串"  # 被变量引用则保留

实战建议:

  • 关键算法步骤必须注释
  • 避免注释与代码不一致(比没注释更糟)
  • 复杂函数使用文档字符串(Docstring)

三、新手必遇错误及解决方案

1. 定位错误:解读Traceback
Traceback (most recent call last):
  File "demo.py", line 3  # ← 错误发生的文件行号
    print("Hello")
            ^
SyntaxError: invalid character ')' (U+FF09)
2. 高频错误
错误类型典型案例解决方案
缩进错误IndentationError: unexpected indent检查行首是否有多余空格

所有违反Python语法规则的代码都会引发SyntaxError

错误类型触发场景错误提示示例
引号错误使用中文引号invalid character '“' (U+201C)
缩进错误混合空格Tabunexpected indent
冒号缺失if/for后缺冒号invalid syntax
括号不匹配未闭合括号unterminated string literal
保留字误用变量名用保留字can't assign to keyword

#快捷键操作(PyCharm)Alt+Enter获取IDE的错误修复提示方案

3. 特殊场景避坑指南

场景1:复制代码导致首行缩进错误

    print("行首有空格")  # 肉眼难辨的缩进错误

解决方法:PyCharm按Ctrl+Alt+L格式化代码

场景2:字符串内误用中文符号

# 错误(中文括号)
print("这是一段“示范文本”)  

# 正确(英文括号)
print("This is correct.")

场景3:Windows路径引发的错误

# 错误(未转义反斜杠)
file = "C:\new\temp.txt" 

# 正确处理方案
file = r"C:\new\temp.txt"  # 原始字符串
file = "C:/new/temp.txt"   # 正斜杠替代

四、调试技巧:PyCharm高效排错

  1. 断点调试:

    • 点击行号左侧红点设置断点
    • 右键 → Debug '文件名'
    • 使用步进按钮逐行执行
  2. 实时检查:

    # 运行时检查变量类型
    print(type(variable))  # 输出 <class 'str'>
    
    # 快速验证代码段
    if condition: 
        # 临时注释可能出错的部分
        # raise Exception("测试异常")
    
  3. 预防性编程:

    try:
        result = 10 / 0
    except ZeroDivisionError as e:
        print(f"捕获异常:{e}")  # 友好提示替代崩溃
    

代码规范自检清单

  1. 所有缩进是否为4个空格?
  2. 函数/类名是否符合蛇形/驼峰命名?
  3. 关键逻辑是否有注释说明?
  4. 所有符号是否为英文状态?

遇到棘手问题?在评论区描述你的报错信息,社区高手在线解答! 💬
如果本文帮你避开了坑点,请点赞支持~ 👍

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐