【发布时间】:2010-05-17 23:05:42
【问题描述】:
我尽量遵守 Python 代码的样式指南(也称为 PEP 8)。因此,命名类的首选方法是使用 CamelCase:
几乎无一例外,类名 使用 CapWords 约定。内部使用的类还有一个前导下划线。
如果我的班级名称由两个首字母缩写词组成(在正确的英语中应该大写),我如何与 PEP 8 保持一致。例如,如果我的班级名称是“NASA JPL”,你会给它起什么名字?:
class NASAJPL(): # 1
class NASA_JPL(): # 2
class NasaJpl(): # 3
我正在使用#1,但它看起来很奇怪; #3 看起来也很奇怪,而 #2 似乎违反了 PEP 8。
【问题讨论】:
-
@fuzzy:我不明白 JPL(喷气推进实验室)不是首字母缩写词,而 NASA(美国国家航空航天局)是。我也无法理解有人认为您的评论很棒,但这可以归因于我自己的不足之处。 :)
-
首字母缩略词是一个单词的缩写。你说 JPL 作为一个词,就像 JayPul 一样?不,你说字母,J,P,L。这是一个缩写。
-
考虑更广泛的 Python 工具集 - 特别是 pylint 类型的工具。他们不善于在 Python 类、方法和变量名中发现英语。将 Python 视为一门外语而不是英语方言可能会让您“放开”大写首字母缩略词并使用 #3 #opinion
-
作为一个局外人,我可以看出
NasaJpl是两个不同的首字母缩写词。这应该给你一个提示。可读性比一些人为的随机规则更重要
标签: python coding-style naming-conventions