我pylint -E
作为 Python 项目测试的一部分运行,以确保错误不会蔓延到未经测试的代码中。一般来说,这工作得很好。但最近我遇到了voluptuous和 pylint 的问题。
问题是 pylint 认为 voluptuous Schemas 返回的值是列表,而事实并非如此。这是一个玩具程序:
import voluptuous
MyType = voluptuous.Schema({
'q': str
})
def foo(bar):
bar = MyType(bar)
q = bar.get('q')
print q
foo({'q': '1324'})
它运行得很好:
$ python toy.py
1234
但是,pylint 会标记.get()
调用:
$ pylint -E toy.py
No config file found, using default configuration
************* Module toy
E: 11, 8: Instance of 'list' has no 'get' member (no-member)
我怎样才能让这个程序通过pylint -E
?