刚入行那会儿,我写的Python代码自己都看不下去。函数名一会儿大写一会儿小写,缩进混用空格和制表符,同事一接手就皱眉头。后来才明白,写代码不是自嗨,得按规矩来。
PEP 8是啥?
这玩意儿就是Python官方出的编码风格指南,相当于写代码的“普通话”。比如变量命名要用下划线连接,user_name比userName更地道。函数名也一样,别整驼峰,看着别扭。
一行别写太长,79个字符是红线。超过就得换行,不然在别人屏幕上显示成两截,特别难读。
缩进统一用4个空格
有人爱用Tab,有人用2空格,项目一合并就乱套。我吃过亏,在公司改一个脚本,缩进全崩了,报错还找不到原因。现在只要看到混用缩进的代码,第一件事就是全改成4个空格。
def calculate_total(items):
total = 0
for item in items:
total += item.get('price', 0)
return total导入顺序也有讲究
标准库、第三方库、本地模块,分三块写,中间空一行。这样别人一眼就知道用了哪些外部依赖。
import os
import sys
from flask import Flask
import requests
from utils import helper
from models.user import User类定义前后各两个空行,函数之间一个空行。别堆在一起,看得眼花。注释别偷懒,但也不能啰嗦。说明“为什么”这么写,而不是“做了什么”,代码自己会说话。
现在写完一段代码,我会用工具检查。比如flake8,装好之后命令行跑一下就能揪出不符合规范的地方。团队项目里直接加到CI流程里,不合规矩的代码不让提交。
这些细节看起来琐碎,可真能省下不少沟通成本。上次实习生写的脚本能直接跑通,就是因为从第一天就按PEP 8来。不用我一句句教他怎么排版,省下来的时间多写两个功能不香吗?