vscode Python 代码格式化最好的方案

175 天前
 Ghostisbored

大家好 刚接触 python 不知道大家有没有遇到这个问题 比如我刚写了一个方法:

def test:
    num = 5     
    if num == 3:  
       print 'boss'  
    else:
       print 'roadman' 

现在我要用一个 try catch 包裹处理逻辑 但是问题来了 我添加 try catch 后 无法格式化 比如代码只会自动缩进第一行 如果我这个方法很多行 那么我目前只能手动缩进对齐 是否有更好的方法是我不知道的 谢谢大家

1733 次点击
所在节点    Visual Studio Code
12 条回复
l4ever
175 天前
ruff
保存就自动处理好了, 默认规则已经很完善了,
keakon
175 天前
我是用 black ,ruff 也是用 black-compatible 的格式

不过我不喜欢用双引号,所以 fork 了一个 white: https://github.com/keakon/white
tinytoadd
175 天前
你学习的是 python2 吗。首先检查一下看看语法有没有问题
Ghostisbored
174 天前
@l4ever #1 测试了下这个 好像也不行 也不知道我哪里的配置是不是有问题 我在看看
Ghostisbored
174 天前
@keakon #2 好的 我看看
Ghostisbored
174 天前
@tinytoadd #3 应该没有问题 很简单的 demo 进行测试的
ZnductR0MjHvjRQ3
174 天前
就是这样啊 你用 pycharm 也是这样啊,当你本身写的语法出错的时候 比如你的 try 和 num 在一个缩进的时候 就是无法格式化代码,因为 python 的语法原因,你需要手动对齐代码然后再去格式化

我在 vscode 一般用 black 不过比较麻烦的就是 每个虚拟环境都需要自己装一遍
Ghostisbored
174 天前
@Motorola3 #7 是的 这就是问题 我还以为大家有好的方案 我平时用 java 比较多 好像没有这个问题 可能 idea 强大的原因
Campanula
174 天前
其实单纯是 python 缩进语法的缺陷,自动格式化工具不敢轻举妄动。
skt041959
174 天前
python 不是 try-catch ,是 try-except
Ghostisbored
173 天前
@skt041959 #10 hhh 打顺手了 的确是 try-except 但是的确不好格式化 特别是写了一大段逻辑后 发现最好要 try-except 处理下某个抛出的异常 那时就比较麻烦了
Ghostisbored
146 天前
过了这么久 我自己来回答 找到一种不错的方案
选中按 TAB 整段右移
选中按 SHIFT+TAB 左移整段左移
这样对齐就行 很方便

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1053165

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX