在Python模块中编码__init__.py的正确样式

时间:2015-02-27 14:14:54

标签: python coding-style pylint spyder

我不是那么流利的Python,所以我不确定我所做的是通常的做法还是正确的做法。

我正在创建一个模块archive,每个文件包含一个类,例如内置SmsArchiveReader.pySmsArchiveReader。为了减少繁琐的导入,我决定将这些类直接导入__init__.py

然而,Spyder和Pylint都与我的__init__.py有问题,Spyder告诉我我不应该使用未使用的导入,Pylint告诉我不应该使用绝对导入。这两个建议对我来说都没有意义,因为我们正在谈论__init__.py,但我愿意接受建议。

下图:Spyder reaction

至于我想要实现的外观,我希望使用此模块的代码看起来像这样:

import archive

myReader = archive.SmsArchiveReader()
myReader2 = archive.FooArchiveReader()

而不是:

import archive

myReader = archive.SmsArchiveReader.SmsArchiveReader()
myReader2 = archive.FooArchiveReader.FooArchiveReader()

那么创建模块的正确做法是什么?

1 个答案:

答案 0 :(得分:0)

正如jonrsharpe所说,这是Spyder IDE的一个问题。此问题已提交给他们的错误跟踪器,感兴趣的人可以在Github上查看其状态。