【发布时间】:2016-06-03 12:43:31
【问题描述】:
如果我创建了一个文件test.py,其内容格式如下:
import re
long_string = "foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo"
class Foo():
pass
然后从命令行对文件运行flake8,如下所示:
$ flake8 --max-line-length=79 test.py
只报了两个错误:
test.py:1:1: F401 're' imported but unused
test.py:3:1: E302 expected 2 blank lines, found 0
未报告第二行的max-line-length 违规。
完全是偶然的(我在测试任何命令选项是否会被尊重),我发现如果我添加一个这样的忽略选项:
$ flake8 --max-line-length=79 --ignore=E302 test.py
那么报错行长是:
test.py:1:1: F401 're' imported but unused
test.py:2:80: E501 line too long (97 > 79 characters)
我在 Ubuntu 16.04 上,我的 flake8 版本信息是:
2.5.4 (pep8: 1.7.0, mccabe: 0.2.1, pyflakes: 1.1.0) CPython 3.5.1+ on Linux
当我在 Emacs Stack Exchange 站点上发布 a related question 时(我最初认为问题出在 Emacs 包上),那里的一位用户指出 flake8 2.5.4 requires a lower version of pyflakes。但是,通过apt 或pip 安装flake8 会自动安装该特定版本的pyflakes 作为依赖项,并且我无法获得pyflakes 的旧版本以查看是否可以解决问题(也许这完全是另一个问题)。
我在这里做错了什么,还是这是一个错误?
【问题讨论】: