First, I am fully aware about PEP8, but sometimes it isn't very clear about how should you name things.
Let's assume we have ABC as an abbreviation.
- Module should be named:
abc - Class inside the module should be named:
AbcorABC? (not sure) - Instance variable should be named
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 ? If you have a constant inside the abc module, you may want to access it using abc.CONSTANT from outside but if you also have the instance with the same name it will not be clear?
If there a clean way to solve this kind of problem? Is the solution different if instead of an acronym you just have a simple word?
Note: Abc() class acts most of the time as Singleton, so for this reason I wasn't able to find another name for the instance.