在此代码段中,
def add(x:int, y:int) -> int:
return x + y
有些功能注释仅在python 3.0之后才受支持
当我为这个python代码执行flake8时:
$ flake8 7.3.py -vv
checking 7.3.py
def add(x: int, y: int) -> int:
return x + y
7.3.py:1:11: E901 SyntaxError: invalid syntax
我收到无效的语法错误,但它应该是有效的语法。如何使用flake8检查仅Python 3.x支持的语法?
参见:https : //bugs.launchpad.net/pyflakes/+bug/989203
注意:尽管此错误报告指出了一定程度的解决方案,0.8.1
但由于缺少Python 3注释,因此测试pyflakes的最新版本仍然存在。
我想您必须向pyflakes提交单独的新功能请求。
$ cat - > foo.py
def add(x:int, y:int) -> int:
return x + y
^D
$ pyflakes --version
0.8.1
$ pyflakes foo.py
foo.py:1:10: invalid syntax
def add(x:int, y:int) -> int:
^
更新(20140514):
事实证明,此问题的实际答案是在Python 3.xpyflakes
或flake8
Python 3.x之上运行。这说得通 :)
所以做这样的事情:
/usr/bin/python3 -m pyflakes foo.py
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句