在Python代码中,在命名类,方法和变量时,处理众所周知的首字母缩略词的规范方法是什么?
例如,考虑一个处理RSS提要的类。那会是这样的:
class RSSClassOne:
def RSSMethod(self):
self.RSS_variable = True
class ClassRSSTwo:
def MethodRSS(self):
self.variable_RSS = True
或者这个:
class RssClassOne:
def rssMethod(self):
self.rss_variable = True
class ClassRssTwo:
def MethodRss(self):
self.variable_rss = True
即。更重要的是,保留首字母缩略词或PEP 008的建议?
从回答中编辑,我得出结论,这将是要走的路:
class RSSClassOne:
def rss_method(self):
self.rss_variable = True
class ClassRSSTwo:
def method_rss(self):
self.variable_rss = True
答案 0 :(得分:8)
嗯,事实证明,PEP 8已经涵盖了here这个主题:
注意:在CapWords中使用缩写时,请将所有字母大写 的缩写。因此
HTTPServerError
胜过。{1}}HttpServerError
。
换句话说,包含首字母缩略词的名称的Python约定是:
在类名中保持首字母大写(通常是使用CapWords的Python的唯一部分)。
在其他地方,将它们设为小写以符合其他naming conventions。
以下是ipaddress
module的演示:
>>> import ipaddress # IP is lowercase because this is a module
>>> ipaddress.IPv4Address # IP is uppercase because this is a class
<class 'ipaddress.IPv4Address'>
>>> ipaddress.ip_network # IP is lowercase because this is a function
<function ip_network at 0x0242C468>
>>>
答案 1 :(得分:1)
我认为第一个根本没有任何问题。作为首字母缩略词代表一系列单词,并且在Python class
名称中,您在每个单词的开头处CamelCase
,可以将首字母缩略词中的每个字母(单词)大写。
第一个代码示例因此符合Python代码的样式指南,可能超过第二个。简而言之,第一个因为PEP8构造 非常重要。 :)
请记住,有些有时(尽管很少)实例可以略微弯曲这些规则。这可以被认为是其中之一。
答案 2 :(得分:0)
我想说按照PEP 8中的建议,首先要做的是编码风格。