首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VS代码(Linux)中强制执行PEP-8衬里和格式化。

在VS代码(Linux)中强制执行PEP-8衬里和格式化。
EN

Stack Overflow用户
提问于 2020-09-27 02:22:30
回答 2查看 4.7K关注 0票数 4

我在Linux 20环境下,对于programming,我一直在使用pyenv,这是在Linux下安装的推荐方法

我通常使用VS代码,最近才有机会尝试PyCharm。我对它的衬里和格式化功能感到惊讶,它使编程非常令人愉快。然而,在PyCharm中,我得到了各种有用的警告,并且代码总是被正确地格式化,在VS代码中,这只是部分发生。

举个例子,在导入之后的PyCharm中,如果我只留了一行空行,就会收到以下警告:

代码语言:javascript
复制
PEP 8: E302 expected 2 blank lines, found 1

格式化文件后,PyCharm自动添加这两行空白行。VS代码中相同的pep 8违规行为被忽略,没有警告,格式化后什么也不做。

我在虚拟环境中安装了所有可用于测试的指针和格式化程序提供程序,但没有结果。这是我尝试过的许多配置之一:

代码语言:javascript
复制
{
    "python.formatting.provider": "autopep8",
    "python.linting.pylintEnabled": true,
    "python.linting.flake8Enabled": true,
}

我怎样才能复制VS代码中的PyCharm优秀的线切割和格式化呢?

更新

让我惊讶的是,我使用pipenv而不是pyenv在Windows 10环境下复制了这个配置,并且成功地从VS代码中的PyCharm复制了linting和格式化功能。我必须假定这个问题可能与操作系统或pyenv有关?

EN

回答 2

Stack Overflow用户

发布于 2020-09-27 02:43:32

嘿,尝试在您的env中安装autopep8。然后在VScode中激活与解释器相同的env。使用ctrl+a选择您的代码,然后右键单击鼠标,您将得到格式化选项。还要确保从VScode的扩展市场位置安装了扩展。

票数 3
EN

Stack Overflow用户

发布于 2020-09-27 06:35:18

另外的建议是,尝试在VSCode中使用更漂亮的扩展的pylint,这将在保存python代码更改的同时完成很好的格式化工作。对我来说很有效。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64084190

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档