Emacs flycheck python false正带print()

时间:2018-11-05 09:52:51

标签: python emacs flycheck

我可能会发现emacs flycheck和python的误报。这是在我写文件时发生的:

from sys import *
print('this is an error, like you 3:)', file = stderr)

Python可以正确运行,但是flycheck告诉我存在语法错误。 (我在示例中使用了标准错误,但是任何文件描述符都会发生这种情况)

这不是一个真正的问题,但这有点无聊,原因是flycheck不会指出缓冲区中的任何下一个语法错误。

编辑: 这不是代码错误,请参见屏幕快照error screenshot

编辑2:

$ python --version
Python 3.4.2

1 个答案:

答案 0 :(得分:0)

您的代码使用语法检查器python-flake8(版本:3.5.0)和没有可更改默认行为的配置文件触发以下警告。问题不在于Flycheck,而在于您的代码:

 1   1 warning  F403   'from sys import *' used; unable to detect undefined names (python-flake8)
 2  45 warning  E251   unexpected spaces around keyword / parameter equals (python-flake8)
 2  47 warning  E251   unexpected spaces around keyword / parameter equals (python-flake8)
 2  48 warning  F405   'stderr' may be undefined, or defined from star imports: sys (python-flake8)
默认情况下绑定到M-x flycheck-list-errors

C-c ! l将向您显示确切的内容。

以下内容不会产生任何错误:

from sys import stderr

print('this is an error, like you 3:)', file=stderr)