Python中变量和方法的正确大小写与格式
我知道有些编程语言有它们的命名规则。
比如,PHP 通常用 underscore_case()
这种方式来命名。
Java 则使用 camelCase()
。
C# 则是 PascalCase()
。
等等。
那么,Python 的命名规则是什么呢?我知道这其实没什么大不了的,但我还是想知道有没有一种“最佳实践”,大多数模块都是怎么命名的。
3 个回答
1
注意,有些命名规则和 PEP8 不同,而是遵循这个风格指南最初来源的谷歌 Python 风格指南。
- “内部”指的是模块内部或类中的受保护或私有内容。前面加一个下划线 (_) 可以在一定程度上保护模块变量和函数(使用 import * 时不会包含这些)。
- 在实例变量或方法前加两个下划线 (__) 可以有效地将该变量或方法设为类的私有(这叫做名称改编)。
- 把相关的类和顶层函数放在同一个模块里。和 Java 不同,模块里不需要限制只有一个类。不过,要确保同一个模块里的类和顶层函数有很强的关联性。
- 类名用大写字母开头的单词组合(CapWords),而模块名用小写字母加下划线(lower_with_under.py)。
命名示例
- 包名:
lower_with_under
- 模块名:
lower_with_under
,_lower_with_under
- 类名:
CapWords,
_CapWords
- 异常名:
CapWords
- 函数名:
firstLowerCapWords()
,_firstLowerCapWords()
- 全局/类常量:
CAPS_WITH_UNDER
,_CAPS_WITH_UNDER
- 全局/类变量:
lower_with_under
,_lower_with_under
- 实例变量:
lower_with_under
,_lower_with_under
(受保护)或__lower_with_under
(私有)- 方法名:
firstLowerCapWords()
,_firstLowerCapWords()
(受保护)或__firstLowerCapWords()
(私有)- 函数/方法参数:
lower_with_under
- 局部变量:
lower_with_under
5
阅读一下 PEP 8。
这是一本关于Python代码的风格指南,由Python的创始人Guido van Rossum撰写。
顺便提一下,你的问题的答案是:变量和函数的名字用 underscore_case
(下划线命名法),而类的名字用 PascalCase
(帕斯卡命名法)。
8
两个词:PEP 8。
PEP 8 是 Python 的风格指南。这里有一些这个文档的重点(我故意省略了一些内容;建议你去看看原文,了解更多细节):
包和模块名称:全部使用小写字母。如果模块名中使用下划线能让名字更清晰,可以使用下划线。
类名:几乎没有例外,类名使用大写字母开头的风格。
全局变量名:命名规则和函数差不多。
函数名:函数名应该使用小写字母,必要时用下划线分隔单词,以提高可读性。混合大小写的命名方式只在已经普遍使用的情况下允许(例如
threading.py
),以保持向后兼容。方法名和实例变量:使用小写字母,必要时用下划线分隔单词,以提高可读性。对于非公共的方法和实例变量,只需在前面加一个下划线。
常量:用全大写字母书写,单词之间用下划线分隔。例子包括。