V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
QGabriel
V2EX  ›  Python

求一个 Python 代码格式化工具

  •  
  •   QGabriel · 2022-02-11 17:38:56 +08:00 · 3536 次点击
    这是一个创建于 776 天前的主题,其中的信息可能已经有所发展或是发生改变。
    平时用 vscode 开发 经常要手动修改代码格式~
    有没有自动格式化工具推荐一下~~
    14 条回复    2022-03-21 15:10:01 +08:00
    menc
        1
    menc  
       2022-02-11 17:43:48 +08:00
    试试 black ?
    zedpass
        2
    zedpass  
       2022-02-11 17:44:39 +08:00
    vscode Ctrl+shift+i 就会推荐格式化插件,我记得应该是 autopep8 这个插件
    arischow
        3
    arischow  
       2022-02-11 17:53:48 +08:00 via iPhone
    pre-commit + isort + black
    cmdOptionKana
        4
    cmdOptionKana  
       2022-02-11 17:57:04 +08:00
    一般 black 够用了,用法比较简单。
    ChrisFreeMan
        5
    ChrisFreeMan  
       2022-02-11 18:26:57 +08:00
    autopep8? black? 这两个都比较多人用
    ChrisFreeMan
        6
    ChrisFreeMan  
       2022-02-11 18:28:36 +08:00
    我强迫症晚期癌了,喜欢用 flask8 风格的手动格式化。
    ChrisFreeMan
        7
    ChrisFreeMan  
       2022-02-11 18:29:26 +08:00
    @ChrisFreeMan flake8 打错了
    hsfzxjy
        8
    hsfzxjy  
       2022-02-11 18:33:07 +08:00 via Android
    black
    so1n
        9
    so1n  
       2022-02-11 18:43:40 +08:00
    用在 pre-commit 的全家桶


    ```yml
    repos:
    - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v0.910
    hooks:
    - id: mypy
    - repo: https://github.com/PyCQA/isort
    rev: 5.9.3
    hooks:
    - id: isort
    - repo: https://github.com/psf/black
    rev: 21.7b0
    hooks:
    - id: black
    - repo: https://github.com/PyCQA/flake8
    rev: 3.9.2
    hooks:
    - id: flake8
    exclude: ...
    - repo: https://github.com/myint/autoflake
    rev: v1.4
    hooks:
    - id: autoflake
    args: ['--in-place', '--remove-all-unused-imports', '--remove-unused-variable']
    ```
    Livid
        10
    Livid  
    MOD
       2022-02-11 18:45:51 +08:00
    在 V2EX 的 Python 3 开源项目 Remote Worker 中有我们目前在用自动化代码格式化配置:

    https://github.com/v2ex/remote
    Alliot
        11
    Alliot  
       2022-02-11 22:49:38 +08:00
    autopep8
    xiaozizayang
        12
    xiaozizayang  
       2022-02-12 18:16:04 +08:00
    black+isort+pylint

    可以看我开源在 github 的 py 项目模板: https://github.com/howie6879/py_project_template

    vscode 可以直接用
    ecfge433
        13
    ecfge433  
       2022-02-18 22:27:15 +08:00
    推荐使用 black
    tisswb
        14
    tisswb  
       2022-03-21 15:10:01 +08:00
    yapf 应该有一席之地
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4013 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 05:15 · PVG 13:15 · LAX 22:15 · JFK 01:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.