Ben*_*ank 8 python naming-conventions
在PEP 8中,它声明"常量通常在模块级[...]上定义".这对于标准库是有意义的,其中常量倾向于涉及整个模块而不是特定类(例如zlib.MAX_WBITS或re.UNICODE).我现在正在编写一个模块,其中常量都与各个类有关.
该模块旨在允许Python程序使用特定于应用程序的序列化格式,其中数据块被排列成"块",并且这些块被进一步排列成"区域".块和区域的维度是暴露的有用常量,我一直在做类属性,直到我在PEP 8中遇到这一行.
我倾向于将它们保留原样(PEP 8 也说"愚蠢的一致性是小脑袋的大人物",毕竟),但是要确保我这样做不会太严重打破用户的期望.(该模块尚未发布,因此向后兼容性不是问题.)
供参考,"PEP 8"风格......
CHUNK_SIZE_X = 16
CHUNK_SIZE_Z = 16
REGION_SIZE_X = 32
REGION_SIZE_Z = 32
def Chunk(object):
# magic happens here
def Region(object):
# magic happens here
Run Code Online (Sandbox Code Playgroud)
......以及我目前的"以班级为基础"的风格......
def Chunk(object):
SIZE_X = 16
SIZE_Z = 16
# magic happens here
def Region(object):
SIZE_X = 32
SIZE_Z = 32
# magic happens here
Run Code Online (Sandbox Code Playgroud)
S.L*_*ott 10
显然,基于类的常量属于类.坚持你的第二个例子.请记住,PEP8不是全能者传下来的.这只是好主意:传统,理性和经验可以缓和经文的含义.
Hungrarian_prefix_notation是不必要的.这是你上课的一个原因.
| 归档时间: |
|
| 查看次数: |
2211 次 |
| 最近记录: |