如何让Spyder的PEP8风格分析读取setup.cfg或增加最大行长度?
我正在使用Spyder 2.3.1和python(x, y)。
在Spyder的设置里,你可以开启“样式分析”功能。这功能挺不错的,但我想增加最大允许的行长度。PEP8的默认设置是79个字符。
你可以通过一个叫setup.cfg的文件来更改这个设置,文件内容如下:
[pep8]
max-line-length = 99
你可以在这里查看相关信息:http://pep8.readthedocs.org/en/latest/intro.html#related-tools
我应该把setup.cfg放在哪里,才能让Spyder/PEP8识别我的新限制?或者有没有其他方法可以设置这个限制,或者忽略E501(行太长)这个警告?单单在Spyder里设置“在99个字符后显示垂直线”并没有帮助。
6 个回答
项目里应该有一个包含pep8部分的tox.ini文件,或者一个setup.cfg文件。
http://pep8.readthedocs.org/en/latest/intro.html#configuration
提到“pep8”的说法已经过时了。这个软件包现在叫“pycodestyle”。
如果你是用户 "myname",并且在使用 conda 的环境 "myenv",你可以尝试编辑这个文件:
/home/myname/miniconda3/envs/myenv/lib/python3.7/site-packages/pycodestyle.py
把里面的 MAX_LINE_LENGTH=79 改成 MAX_LINE_LENGTH=100,比如这样。
这样做对我的 Spyder 3.3.6 有用。
受到Minh评论的启发,我找到了一种方法可以在spyder 3.8上实现这个功能,具体步骤如下。首先,使用以下命令找到你的~目录:
import os; os.path.expanduser('~')
(可以参考Justin Harris的备注)
然后在~目录下添加一个名为.pycodestyle
的文件,文件内容为:
[pycodestyle]
max-line-length = 99
(可以参考Carlos Cordoba的回答)
重启spyder [编辑:根据下面的评论,这一步其实不需要]。实际上,这只是把上面大部分的建议和回答结合在一起。
根据@Werner提到的链接:
http://pep8.readthedocs.org/en/latest/intro.html#configuration
你需要做的是创建一个文件,名字叫做 ~/.config/pep8
(在Linux或Mac上)或者 ~/.pep8
(在Windows上),然后把这些内容添加进去:
[pep8]
max-line-length = 99
我在Spyder里测试过,效果很好。