Python编码标准/最佳实践


116

在python中,您通常使用PEP 8-Python代码样式指南作为您的编码标准/准则吗?您还有其他更喜欢的正式标准吗?


1
//最初,“受众群体偏好”的请求看似无害,但它使stackoverflow变成了一种轮询机制,这是少数派反对多数派的一种扭曲的民主。“还有您喜欢的其他________吗?” 从字面上看是要他们偏爱而不是事实。
弥敦道(Nathan Basanese)2015年

Answers:




8

我非常坚持PEP-8。

我有三件事要更改为PEP-8。

  • 避免在括号,方括号或大括号内立即使用多余的空格。

    建议: spam(ham[1], {eggs: 2})

    无论如何,我这样做: spam( ham[ 1 ], { eggs: 2 } )

    为什么?30多年的根深蒂固的习惯使()与函数名或C语言中的语句关键字不符。从70年代的Fortran IV开始。

  • 在算术运算符周围使用空格:

    建议: x = x * 2 - 1

    无论如何,我这样做: x= x * 2 - 1

    为什么?Gries的《编程科学》建议这是强调赋值与状态被更改的变量之间的联系的一种方式。

    对于多重分配或扩充分配,它不太适用,因为我使用了大量空格。

  • 对于函数名称,方法名称和实例变量名称

    建议:小写,单词之间用下划线分隔,以提高可读性。

    我还是这样做:camelCase

    为什么?从80年代的Pascal开始,有20多年根深蒂固的camelCase习惯。


1
那是很棒的内容!codingstyleguide.comcodereview.stackexchange.com将是拥有此出色指南的好地方。
庞贝约

5

PEP 8很好,我唯一希望它更难解决的是Tabs-vs-Spaces的神圣战争。

基本上,如果您要使用python启动项目,则需要选择“制表符”或“空格”,然后立即将所有违规者开枪。


4
制表符或空格?从PEP8:空格是首选的缩进方法。制表符应仅用于与已经用制表符缩进的代码保持一致。
Demz

//,PEP8很清楚,空格是首选的缩进方法Ryan。不赞成投票。不过,会更新答案吗?
弥敦道(Nathan Basanese),2015年



2

是的,我会尽量紧跟其后。

我没有遵循任何其他编码标准。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.