1、 所谓"内部(Internal)"表示仅模块内可用, 或者, 在类内是保护或私有的。
2、 用单下划线(_)开头表示模块变量或函数是protected的(使用import * from时不会包含)。
3、 用双下划线(__)开头的实例变量或方法表示类内私有。
4、 将相关的类和顶级函数放在同一个模块里. 不像Java, 没必要限制一个类一个模块。
5、 对类名使用大写字母开头的单词(如CapWords, 即Pascal风格), 但是模块名应该用小写加下划线的方式(如lower_with_under.py).。尽管已经有很多现存的模块使用类似于CapWords.py这样的命名, 但现在已经不鼓励这样做, 因为如果模块名碰巧和类名一致, 这会让人困扰。
6、Python之父Guido推荐的规范
| Type | Public | Internal | 
|---|---|---|
| Modules | lower_with_under | _lower_with_under | 
| Packages | lower_with_under | |
| Classes | CapWords | _CapWords | 
| Exceptions | CapWords | |
| Functions | lower_with_under() | _lower_with_under() | 
| Global/Class Constants | CAPS_WITH_UNDER | _CAPS_WITH_UNDER | 
| Global/Class Variables | lower_with_under | _lower_with_under | 
| Instance Variables | lower_with_under | _lower_with_under (protected) or __lower_with_under (private) | 
| Method Names | lower_with_under() | _lower_with_under() (protected) or __lower_with_under() (private) | 
| Function/Method Parameters | lower_with_under | |
| Local Variables | lower_with_under | 
原文:https://www.cnblogs.com/mazhiyong/p/12508988.html