我有一个相当大的项目,我试图在发布之前清理它,但是当我运行 flake8 时,我得到了大量的
'F405 <function> may be undefined, or defined from star imports: generic_functions`
我可以通过替换该行来避免这种情况:
from generic_functions import *
在我的文件的开头,但是:
-
我确实使用了其中的所有函数,所以我不明白如何超过输入每个函数的 80 个字符的限制更加 Pythonic:
from generic_functions import (function1, function2, function3, function4, function5, function6, function7...)
执行上述操作会很乏味,特别是如果我需要在 generic_functions.py 中的数十个函数中添加或删除
另一种选择是禁用 F405 警告,但如果该函数确实未定义怎么办?如果允许明星导入,同时仍然捕获任何未定义的内容,那就太好了。有没有办法做到这一点?我尝试将 # noqa 添加到导入行,但似乎没有帮助。
您可以执行以下操作:
- 将您的导入保留为
from generic_functions import *
- 运行 flake8 作为
flake8 --ignore=F405 file.py
。我真的不知道为什么# noqa
不起作用,但是--ignore
does.
- 使用 pylint 测试其余可能的错误。 Pylint 能够确定
<function>
定义并导入自generic_functions
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)