CatCode
V2EX  ›  问与答

有没有什么工具可以格式化 Python 代码?

  •  
  •   CatCode · Nov 19, 2017 · 3981 views
    This topic created in 3280 days ago, the information mentioned may be changed or developed.

    就是比如说,

    i = a + 1
    foo(i, a)
    
    def bar():
        pass
    
    def xxx():
        pass
    

    也可以写作:

    i=a+1
    foo(i,a)
    #下面两个 def 之间没有空行
    def bar():
        pass
    def xxx():
        pass
    

    说白了就是空白有没有的问题,这种空白并不影响执行,但是习惯上觉得第一种要好看一些。
    目前主要用 VS Code 和 VS 2017+Python 支持。以前写.Net 的时候,VS 是可以在写完一句之后马上就自动把第二种写法转换成第一种的,但对于 python 不支持。

    请问各位老鸟有何高见?

    9 replies  •  2017-11-19 17:13:38 +08:00
    SuperMild
    SuperMild
    Nov 19, 2017 via iPad❤️3
    1
    菜鸟这个词流传下来了,同期出现的大虾这个词却已经失传。
    slfmessi
    slfmessi
    Nov 19, 2017 via Android
    2
    yapf, autopep8
    tracyone
    tracyone
    Nov 19, 2017
    4
    nnoremap <leader>cf :0,$!yapf<CR>
    vnoremap <leader>cf :!yapf<CR>
    GlobalNPC
    GlobalNPC
    Nov 19, 2017 via Android
    5
    @SuperMild 大概因为吃大虾不违法,而鸟多是保护动物
    NVDA
    NVDA
    Nov 19, 2017 via iPhone
    6
    PyCharm 有一个 reformat code 的功能
    zhusimaji
    zhusimaji
    Nov 19, 2017 via iPhone
    7
    autopep8
    CatCode
    CatCode
    OP
    Nov 19, 2017
    8
    @slfmessi 感谢,我突然在 VS Code 的 Python 插件里面已经支持了
    a68UkLHpycW7ImyV
    a68UkLHpycW7ImyV
    Nov 19, 2017
    9
    使用 PyCharm 的 Ctrl + Alt + L 键
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4124 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 05:50 · PVG 13:50 · LAX 21:50 · JFK 00:50
    ♥ Do have faith in what you're doing.