繁体   English   中英

具有相同基本名称的Python模块,类和实例变量的正确命名约定是什么?

[英]What would be the proper naming convention for a Python module, class and instance variable having the same base name?

首先,我完全了解PEP8 ,但有时不清楚如何命名。

假设我们使用ABC作为缩写。

  • 模块应命名为: abc
  • 模块内部的应命名为: AbcABC (不确定)
  • 实例变量应命名为abc
# abc.py
CONSTANT = "foo"
class Abc(object):
    pass

# test.py
import abc

print abc.CONSTANT
abc_ = abc.Abc() # oops, if I use `abc` will lose ability to access abc.FOO ?

如果在abc模块内部有一个常量,则可能要从外部使用abc.CONSTANT访问它,但是如果您还具有相同名称的实例,将不清楚吗?

是否有解决此类问题的干净方法? 如果您仅用一个简单的词代替缩写词,解决方案是否有所不同?

注意: Abc()类在大多数情况下都作为Singleton起作用,因此由于这个原因,我无法为该实例找到另一个名称。

模块:abc类:Abc

实例:实例可以像类一样命名,但是绝对不是必需的。 在您的情况下,我将为变量指定一个描述实例的名称,以避免命名冲突!

例:

class Car:
    pass
audi = Car()
myCar = Car()
myBrothersCar = Car()

类名可以是AbcABC ,这取决于它是缩写名称还是纯名称。

缩写示例: CRCCheckerTool

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM