1.缩进问题:采用制表符还是空格呢?
建议:采用空格的形式。而且如果一旦采用一种方式缩进的话,则不要改动,不然就会报错。
2.行的最大长度:
折叠长行的首选方法是:(圆括号,方括号,花括号,反斜杠)
使用Pyhon支持的圆括号,方括号(brackets)和花括号(braces)内的行延续,如果需要,你可以在表达式周围增加一对额外的圆括号,但是有时使用反斜杠看起来更好.确认恰当得缩进了延续的行.Emacs的Python-mode正确得完成了这些。
3.如何使用空行?
(1)在类的和内部函数之间的空行:
类与第一个方法之间的空行:一般为两行。
(2)在类的内部函数之间的空行:
一般采用一个空行。
eg:
4.导入(import)
不同的包的应用要在不同行里:
eg:
5.避免多余的空格:
(1)
(2)
(3)
6.避免多余的注释:
但是这种类型的注释是有用的:
7.命名规范:
(1)模块名:模块应该是不含下划线的,简短的,小写的名字。
(2)类名:类名总是使用首字母大写单词串(CapWords)的约定
(3)全局变量名:这些约定与那些用于函数的约 定差不多.被设计可以通过"from M import *"来使用的 那些模块,应该在那些 不想被导入的全局变量(还有内部函数和类)前加一个下划线)
(4)函数名:
函数名应该为小写,可能用下划线风格单词以增加可读性. mixedCase仅被 允许用于这种风格已经占优势的上下文(如: threading.py) 以便保持向后兼 容.
(5)方法名和实例变量:
A.通常使用小写单词,必要时用下划线分隔增加可读 性.
B.使用一个前导下划线仅用于不打算作为类的公共接口的内部方法和实例变 量. Python不强制要求这样; 它取决于程序员是否遵守这个约定
C.使用两个前导下划线以表示类私有的名字. Python将这些名字和类名连接在一 起: 如果类Foo有一个属性名为 __a, 它不能以Foo.__a访问. (执著的用户 (An insistent user)还是可以通过Foo._Foo__a得到访问权.) 通常,双前导下 划线应该只用来避免与类(为可以子类化所设计)中的属性发生名字冲突.
(6)继承的设计:
始终要确定一个类中的方法和实例变量是否要被公开. 通常,永远不要将数 据变量公开,除非你实现的本质上只是记录. 人们总是更喜欢给类提供一个函 数的接口作为替换 (Python 2.2 的一些开发者在这点上做得非常漂亮)
同样,确定你的属性是否应为私有的.私有与非公有的区别在于: 前者永远 不会被用在一个派生类中,而后者可能会. 是的,你应该在大脑中就用继承设计 好了你的类.
A.私有属性必须有两个前导下划线,无后置下划线.
B.非公有属性必须有一个前导下划线,无后置下划线
PS:公共属性没有前导和后置下划线,除非它们与保留字冲突, 在此情况下,单个后 置下划线比前置或混乱的拼写要好, 例如:class_优于 klass. 最后一点有些 争
来源:CSDN
作者:flower in my heart
链接:https://blog.csdn.net/qq_42099097/article/details/103999379