You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用settings.json配置VS Code以Ruff替代Pylint等工具

VS Code配置Ruff替代Pylint、Pylance和Flake8

你当前的Python配置片段如下:

"python.languageServer": "Pylance",
"[python]": {
    "editor.formatOnType": true,
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "charliermarsh.ruff"
},

针对你的两个问题,具体配置方案如下:

1. 让Ruff启用模拟其他检查器的规则

Ruff内置了对Flake8、Pylint等工具规则的模拟支持,你可以直接在settings.json中指定要启用的规则集或具体规则:

  • 启用Flake8全量规则:添加规则前缀"F"
  • 启用Pylint全量规则:添加规则前缀"PL"
  • 也可以单独指定某条规则,比如Flake8的F401或Pylint的PLR0913

将以下配置添加到你的settings.json中:

"ruff.lint.rules": {
    // 启用Flake8所有规则,级别设为error
    "F": "error",
    // 启用Pylint所有规则,级别设为error
    "PL": "error",
    // 可选:关闭个别不需要的规则
    "PLR0913": "off"
}

如果需要保留Ruff默认规则并扩展模拟规则,可改用ruff.lint.extendRules:

"ruff.lint.extendRules": {
    "F": "error",
    "PL": "error"
}

2. 设置Visual Studio Code仅使用Ruff

要完全替换其他检查工具,需要禁用Pylance的代码检查功能,同时关闭Pylint、Flake8的启用状态:

  1. 关闭Python扩展自带的Pylint、Flake8检查
  2. 禁用Pylance的诊断功能
  3. 确保Ruff是唯一启用的代码检查工具

将以下配置添加到settings.json中:

// 禁用Python扩展自带的所有linting工具
"python.linting.enabled": false,
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": false,
// 禁用Pylance的代码诊断
"python.analysis.disableDiagnostics": true,
// 确保Ruff的linting功能开启
"ruff.lint.enabled": true

完整配置示例

整合后的settings.json片段如下:

"python.languageServer": "Pylance",
"python.linting.enabled": false,
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": false,
"python.analysis.disableDiagnostics": true,
"ruff.lint.enabled": true,
"ruff.lint.rules": {
    "F": "error",
    "PL": "error"
},
"[python]": {
    "editor.formatOnType": true,
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "charliermarsh.ruff"
},

内容的提问来源于stack exchange,提问作者Charles Plager

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 18:42:53