flake8错误E901

5 投票
2 回答
8117 浏览
提问于 2025-04-18 01:28
flake8 xxx --ignore=E501,E128,E701,E261,E301,E126,E127,E131

xxx.py:1:40: E901 SyntaxError: invalid syntax

有没有人知道哪里出现了语法错误?

这是Python 2.6版本,文件的第一行没有字节顺序标记:

from __future__ import absolute_import

不过在Python 2.7和3以上的版本中运行得很好。

2 个回答

5

如果你在flask8命令后面加上 --show-source,它会在输出中指出错误的具体位置。

2

没有完整的文件,很难猜测问题,最好是用一种能准确保留字节的格式。

:1:40表示第一行,第40个字符的位置。这一行总共有38个字符。

所以我们怀疑是换行符的问题。

很可能换行符(一个字符)没有被识别,导致Python(不是flake8)把这一行和下一行当成一整行来处理。因此,错误出现在第40列。

另外,你的换行符可能是由两个字符组成的,而第二个字符没有被正确理解。

理论上也可能存在编码问题,但我觉得这种可能性不大。

撰写回答