如何在PyCharm中为flake8启用自动代码格式化

Ryu*_* S. 13 python plugins pep8 pycharm flake8

我使用Tox来运行单元测试,使用flake8命令检查代码格式错误.每次我在PyCharm中编码,我运行tox然后意识到我有一堆烦人的格式错误,我必须回来并手动修复.我希望PyCharm自动格式化代码(根据flake8 google,每次我停止输入后自动保存,对我来说.

我的tox testenv看起来像这样:

[testenv:flake8]
commands=flake8 <my_code_directory>
deps =     
  flake8==2.4.1    
  flake8-import-order==0.11    
  pep8-naming==0.4.1 

[flake8] 
max-line-length = 120 
import-order-style = google
Run Code Online (Sandbox Code Playgroud)

这可能吗?我是否必须在某处下载特定的插件?如果没有flake8,那么PEP-8呢?

use*_*610 12

您想要的工具可能是autopep8。这尤其是因为它使用的警告代码对应于 flake8 的警告代码。

例如,如果要自动修复 E701 多语句警告的所有实例,请运行以下命令

for f in `find . -name "*.py"`; do autopep8 --in-place --select=E701 $f; done
Run Code Online (Sandbox Code Playgroud)


jnn*_*nns 9

对于自动排序导入语句,请使用isort。考虑使用黑色来自动格式化你的 Python 代码。


Ian*_*sco 8

Flake8和导入排序不能以符合您所看到的方式自动修复.您可以使用autopep8自动修复pep8.

有讨论,这里大约尽管实现这个为Flake8.