page contents

写Python注释还有规范?按这个来,同事都夸你代码像文档

有一次接手一个老项目,打开文件直接蒙了。一个函数三百行,没有一句注释。变量名字是a,b,c。当时真想骂人。后来自己返工查自己三个月前的代码,同样认不出写了什么。

attachments-2026-07-yUA2jHR96a5595b860f1c.png

写Python注释还有规范?按这个来,同事都夸你代码像文档

刚工作那会儿,我特别讨厌写注释。觉得代码自己能看懂就行,注释是浪费时间。

有一次接手一个老项目,打开文件直接蒙了。一个函数三百行,没有一句注释。变量名字是a,b,c。当时真想骂人。后来自己返工查自己三个月前的代码,同样认不出写了什么。

从那以后,我开始认真研究注释怎么写。不是那种“这里加了一个数”的废话,是真正能帮到人的注释。

核心就一条:注释要说“为什么”,不要说“是什么”。

代码本身就能表达“是什么”。变量赋值,函数调用,逻辑判断,这些都是代码在说的内容。注释再多说一遍就是噪音。

比如这样写的注释就很蠢:

 把a赋值给b
b = a

谁看不出来?真正需要注释的是那些隐形的上下文。

函数注释要写清楚输入输出,最好带类型和例子。

很多人写函数注释只写一行,说“这个函数处理数据”。等于没写。应该这样:

def parse_user_info(raw_data):
    '''解析用户信息
    Args:
        raw_data: dict, 来自接口的原始数据, 结构见文档X
    Returns:
        dict: 包含name, age, email三个字段
    Raises:
        ValueError: 缺少必要字段时抛出
    '''

别人看到这个注释,立刻知道怎么调,返回什么,出错怎么办。不用再去看文档,不用翻代码。

代码块注释要讲业务目的。

业务逻辑是最容易看不懂的。比如有一段排序代码,为什么用冒泡排序不用快速排序,可能是数据量很小。这时候注释要写“接口返回数据量小于100条,冒泡排序够用且稳定”。

再比如一段复杂的条件判断,为什么是这几个条件。可能是因为业务规则里要求同时满足ABC三种情况。直接写“根据业务规则A和B和C的复合条件过滤”,比写一大堆if判断的推理过程有用得多。

难懂的算法逻辑要单独加行内注释。

有时候算法本身就很绕。比如递归处理树形结构,或者用位运算做状态判断。这种地方不写注释,别人看三遍也可能看不懂。可以在关键逻辑前加一行,简单说“这一步是为了避免重复计算”或者“利用异或运算判断奇偶差异”。

有个小技巧。变量名字起得好,注释能少一半。

把temp换成user_input,把data换成order_list。代码自己就在说话。注释就用来补代码说不清的部分。

还有一个容易被忽视的,TODO注释要写明责任人。

很多人写TODO就写“后面要优化”。下次谁看到这句话都犯愁,不知道谁写的,不知道啥时候改。正确的写法是“TODO(张三): 提升查询性能, 计划用缓存替代”,这样别人就知道该找谁问,也知道问题背景。

我见过最好的注释风格,是一个同事写的。他的代码里,每个文件开头有一段目录注释,列出文件里有哪些类哪些函数,大概什么功能。新同事看代码,先看这段目录,对整个文件心里就有数了。这个习惯我后来也学了,确实好用。

还有个规矩,注释必须和代码同步更新。

代码改了,注释不改,比没写注释还坑。别人看着旧的注释理解新代码,肯定出问题。所以每次改代码,顺手看一眼相关注释要不要改。养成习惯就不觉得麻烦。

最后说个实在的。注释写得好不好,有个最简单的检验标准。把你所有的注释摘出来,如果拼在一起能讲清楚整个业务逻辑,注释就合格了。

同事夸你代码像文档,不是夸你注释多,是夸你的注释精准有用。少即是多,重点说清楚“为什么这样写”,比堆砌一大堆“做了什么”强得多。

写注释不花多少时间,省的是后面翻代码骂娘的时间。你试试看,坚持半个月,同事对你的评价绝对不一样。

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

 

  • 发表于 2026-07-14 09:49
  • 阅读 ( 29 )
  • 分类:Python开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

2247 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. Pack 2247 文章
  3. 小柒 2228 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章