一个朋友告诉我关于Pylint的事,出于好奇,我用一些标准的库模块运行它。令我惊讶的是,收视率很低。以下是一些跑步记录:
os.py
Your code has been rated at 3.55/10
random.py
Your code has been rated at 4.74/10
我在更多的模块上运行了它,结果发现等级是~6-7。在
我想知道这背后的原因?是派林断了还是评级的因素比我所知的还要多?我之所以问这个问题,是因为我对Python还不熟悉,并且依赖Pylint来帮助我改进我的编码风格:)
Tags:
Pylint是在stdlib之后很久写的。stdlib不遵守严格的命名约定,例如(PEP008是最近的,wrt python)。获得“好”pylint评级的关键因素:
确保您的代码编写风格符合Pylint的预期(或者调整Pylint以匹配您的样式/惯例)。这包括函数、变量、类、方法名、不同位置的空格等。
以尽可能静态的方式编写Python代码,避免使用动态技巧。
写入docstrings
显然,编写标准库并不是为了优化Pylint对模块的评级。在
使用Pylint不一定能改善你的“编码风格”。然而,在许多情况下,它会使代码更易于理解,有时会以一些“pythonicy”为代价。在
Pylint的违约非常严格,并且抱怨不该这样做的事情。例如,如果使用
foo(**kwargs)
,则会收到一条关于使用“magic”的消息。有时候,pylint似乎是从Java程序员的角度来看待Python的。在你得看看具体的信息,然后决定是否同意。在
其他问题包括不能执行特定于平台的条件。在操作系统py,它抱怨:
相关问题 更多 >
编程相关推荐