Why does PyCharm use 120 Character Lines even though PEP8 Specifies 79?
PEP8明确指定了79个字符,但是PyCharm默认为120,并给我警告" PEP8:行太长(...> 120个字符)"。
PEP8的早期版本是否使用120,而PyCharm不会更新其PEP8检查器? 我找不到《 PEP8指南》的任何先前版本,但是,我可以轻松地找到PEP8 Python脚本的先前版本。
我正在启动一个新的Python项目,但不确定使用哪个项目。
参考文献:
http://legacy.python.org/dev/peps/pep-0008/
-
如果您想符合pep-8标准,那么答案就在您的链接中
PyCharm建立在IntelliJ之上。 IntelliJ的默认行长为120个字符。
这可能是因为您不能在仅80个字符的行中插入通用Java名称,例如:@annotated public static MyObjectFactoryFactory enterpriseObjectFactoryFactoryBuilderPattern {。 (我很有趣,但是按照惯例,Java名称的确会更长一些)。
pep8检查器是可配置的,因此您可以指定更好的最大行长-例如79个字符。
该错误具有误导性,因为pep8检查器使用"PEP8: line too long(... > %s characters)" % max_line_setting之类的格式设置文本。因此,它使用具有特定配置的pep8检查器,而不是声称pep8指定了120个字符的行。
-
我认为Intellij Python插件是Intellij的Pycharm。但是我不会说Pycharm是基于Intellij构建的,Intellij是JetBrains的高端产品。
-
@Apero根据JetBrains博客的说法:"代码在GitHub上已经存在,可以随时使用。它不是一个单独的项目,而是IntelliJ IDEA社区版主要项目的一部分。" IntelliJ只是他们的Java IDE,它既有免费啤酒社区版本,又有具有其他企业功能的付费版本。您也可以购买具有类似功能的PyCharm版本。
-
这是他们正在努力解决的已知问题:youtrack.jetbrains.com/issue/PY-16078
如果要完全删除限制警告,可以采取以下步骤:
在PyCharm中,单击文件>设置。
在项目设置部分中,单击编辑器>检查
在出现的列表中,展开" Python"
在Python下,向下滚动并单击"违反PEP8编码风格"
点击右下角"忽略错误"旁边的+按钮
输入E501,然后单击"应用"和/或"确定"
资料来源:
-
http://iambigblind.blogspot.com/2013/02/configuring-pep8py-support-in-pycharm-27.html
-
https://intellij-support.jetbrains.com/hc/en-us/community/posts/205816889-Disable-individual-PEP8-style-checking-line-length-
AFAIK,PEP8始终从未允许使用120个字符,但并不是每个人都遵循PEP8。
要回答您的问题:出于礼貌和明智的考虑,请保持80个字符以下。
-
但是PyCharm声称120是PEP8。他们为什么误导人们?
-
由于我不使用PyCharm,因此不适用于@munkhds的答案。 (坚持使用emacs,一切都会好得多...)
-
从PEP-8(但我最多编码120个字符,有时也违反该限制):" ...有些团队强烈希望使用更长的行长。对于专门或主要由可以就此问题达成协议的团队维护的代码,可以将行长限制增加到最多99个字符..."