可以性感的代码通过pylint



我在Python项目上运行pylint -E作为测试的一部分,以确保错误不会蔓延到未测试的代码中。总的来说,这很有效。但最近我遇到了性感和皮琳的问题。

问题是pylint认为性感的Schema返回的值是列表,但事实并非如此。这里有一个玩具程序:

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

一个选项是完全忽略voluptuous模块,例如

$ pylint -E --ignored-modules=voluptuous toy.py
(passes)

如果pylint能更好地理解voluptuous,那就太好了。

相关内容

  • 没有找到相关文章

最新更新