在 VS Code 中禁用 Python 代码中的自动换行

问题描述 投票:0回答:6

我使用 Visual Studio Code 通过 Pylint 编写 Python 代码。

当我按 Ctrl + S(保存)时,编辑器会将长行换行为多个短行。如何禁用该操作或将换行列数配置为 120(默认为 80)?

我尝试了

 "python.linting.pylintArgs": ["--max-line-length=120"]
"editor.wordWrapColumn": 120
,但没有成功。

python visual-studio-code pylint
6个回答
280
投票

检查您的 Python 格式提供程序。

"python.formatting.provider": "autopep8"

我猜在你的情况下,不是 Pylint 一直包裹着长线,而是

autopep8
。尝试将
--max-line-length
设置为
autopep8

"python.formatting.autopep8Args": [
    "--max-line-length=200"
]

15
投票

使用自定义参数时,命令行上用空格分隔的参数字符串的每个顶级元素必须是参数列表中的单独项目。例如:

"python.formatting.autopep8Args": [ 
  "--max-line-length", "120", "--experimental" 
],
"python.formatting.yapfArgs": [
  "--style", "{based_on_style: chromium, indent_width: 20}"
],
"python.formatting.blackArgs": [
  "--line-length", "100"
]

为了正确格式化这些 Python 设置,您可以检查 特定于格式化程序的设置

另请查看此处的答案:

在使用 Visual Studio Code 和 autopep8 导入之前允许使用语句


1
投票

如果您使用

yapf
作为格式化程序,则选项为
column_limit
。例如,来自
settings.json

"python.formatting.provider": "yapf",
"python.formatting.yapfArgs": [
    "--style={based_on_style: google, indent_width: 4, column_limit: 150}"
],

1
投票

在 VS Code 版本

1.82.2
(2023)中,解析 autopep8 增强功能的位置已更改。

现在您应该将以下内容添加到 settings.json 文件的

top level
中:

"autopep8.args": ["--max-line-length=120"]

或完全取消长度限制:

"autopep8.args": ["--ignore=E501"]

0
投票

我用不同的方式尝试了解决方案。在 VSC 设置中搜索“Autopep8”。正如您所看到的,这里有一个“添加项目”按钮。您只需单击它并将代码粘贴到那里即可。该代码将添加到您的“settings.json”文件中。

screenshot


-2
投票

Autopep8 需要

--aggressive
才能建议非空白更改:

"python.linting.pylintArgs": ["--max-line-length", "120", "--aggressive"]

这将为您排长队。

© www.soinside.com 2019 - 2024. All rights reserved.