【问题标题】:Pycharm's code style inspection: ignore/switch off specific rulesPycharm的代码风格检查:忽略/关闭特定规则
【发布时间】:2015-04-10 06:52:54
【问题描述】:

我正在尝试将现有项目导入 PyCharm。我可以重构代码以便 PyCharm 满意,但我们希望在字典中的冒号周围有空格,例如:{"A" : "B"}。我们也喜欢对齐作业:

a   = 1
abc = 3

有没有办法配置 PyCharm,以便他忽略与此特定内容相关的所有错误/警告?

【问题讨论】:

    标签: python ide pycharm pep8


    【解决方案1】:

    要在字典中的冒号周围有空格,请配置 Settings > Editor > Python Spaces

    Other > Before ':'

    Other > After ':'

    【讨论】:

    • 我忘了提:选项“之前”:“”也影响函数定义,例如def foo() :.
    【解决方案2】:

    @Krzysztof Stanisławek,函数不同,因为 Pycharm 遵循 PEP8 编码风格,所以建议函数变量和“:”之间不要有空格,如果你不想这样,你可以通过

    "Settings"-> "Editor"-> "Inspections"->"PEP8 coding style violation"
    

    但是,不建议这样做。

    【讨论】:

    • 更多的问题是自动格式化。我可以将我的代码重新格式化为{a: b, c: d},而不是首选{a : b, c : d},或者def foo(self) :。问题是格式化程序在两种情况下都将: 视为相同,这些情况没有单独的选项。我不认为有什么办法(看起来Pycharm缺少我需要的功能),所以我想我会说服我的队友将我们的dicts样式更改为{a: b},或者使用简单的正则表达式来格式化:在方法括号的末尾。
    • 发现这个关于禁用特定 PEP8 指南的信息:iambigblind.blogspot.de/2013/02/…
    【解决方案3】:

    如果您可以忽略所有匹配问题,只需按 Alt-Enter(或单击灯泡)并选择“禁用检查”。节省您进入设置并尝试找出匹配的检查规则。

    来自http://iambigblind.blogspot.jp/2013/02/configuring-pep8py-support-in-pycharm-27.html

    【讨论】:

      【解决方案4】:

      使用 PyCharm 5(社区版),您可以执行以下操作:Code –> Inspect Code。然后选择所需的检查错误,然后单击右侧的“抑制”选项或“忽略此类错误”选项。 请看下面的截图:

      当您选择“Suppress”选项时,它会添加如下截图所示的注释:

      可以在语句或函数/方法级别进行抑制。如果试图抑制函数的参数,则抑制仅在函数级别起作用(这意味着它还会抑制该函数中可能存在的其他名称引用违规)。

      您还可以选择完全关闭“PEP8 编码风格违规”(通过勾选下面显示的框),或手动明确管理“忽略错误”。截图如下:

      一般来说,您或许应该质疑为什么要禁止 PEP8 指南。但是,有时它似乎是必要的,例如在使用 pytest 模块时,需要隐藏变量等,这是 PEP8 检查所抱怨的。在这种情况下,PyCharm 中的此功能非常有用。

      【讨论】:

      • 请注意,Suppress 会修改源代码(因此您项目中的其他开发人员不会看到警告),而 Ignore 会仅为您的机器关闭它们(本地检查配置文件);具有不同配置文件的其他开发者仍会看到警告。
      • 如果您想像上一个屏幕截图那样明确停用某些错误。以下是 PEP8 错误代码列表:pep8.readthedocs.io/en/release-1.7.x/intro.html#error-codes
      • 您实际上在忽略错误列表中添加了什么?我找不到示例。
      • @ThatAintWorking 查看我发布的链接。有一个带有错误 ID 的列表。只需将您不喜欢的添加到框中即可。例如。 E701
      【解决方案5】:

      我遇到了同样的问题,@fantabolous 指出了巧妙的解决方案,来自configuring PEP8.py support in PyCharm 2.7

      之前的示例

      手动添加错误代码或在错误突出显示时使用“Alt+Enter”
      可以找到错误码here

      改动后

      最好选择一些规则而不是禁用 PEP8 的所有警告。感谢之前的cmets。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-25
        • 2017-05-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-08
        • 1970-01-01
        相关资源
        最近更新 更多