Ruff的900+内置Lint规则全清单:一键替代Flake8、Pylint、Bugbear的终极规则集
Ruff的900内置Lint规则全清单一键替代Flake8、Pylint、Bugbear的终极规则集【免费下载链接】ruffAn extremely fast Python linter and code formatter, written in Rust.项目地址: https://gitcode.com/GitHub_Trending/ru/ruff你是否还在同时维护 Flake8、Pylint、pycodestyle、isort、pyupgrade 好几个检查器Ruff 是用 Rust 编写的极速 Python Linter代码检查器与格式化工具内置900 条 Lint 规则原生复刻了 Flake8 及其数十个流行插件包括 flake8-bugbear、pylint 等的规则集速度快 10~100 倍一条命令即可替换你现有的整套检查工具链。为什么是 Ruff一个工具替代五个传统 Python 项目的代码质量检查往往要拼装一堆工具各管一摊原有工具负责什么Ruff 对应规则前缀Pyflakes未使用导入、未定义变量Fpycodestyle缩进、空格、行宽等风格E/Wflake8-bugbear隐蔽 Bug、坏味道Bpyupgrade语法现代化升级UPisortimport 排序Imccabe圈复杂度C90pylint约定/错误/重构类检查PLflake8-simplify代码简化建议SIMpydocstyle文档字符串规范D而 Ruff 把这些规则全部用 Rust 原生重新实现而非调用插件因此才能做到扫描整个 CPython 级别的代码库只需几秒甚至快到你故意写错代码确认它真的在跑。Ruff 由 Astral 团队开发维护该团队同时也是 uv 和 ty 的作者被 Apache Airflow、FastAPI、Pandas、SciPy 等主流开源项目采用。900 规则全清单看懂规则代码系统Ruff 沿用了 Flake8 的规则代码体系1~3 个字母前缀 3 位数字如F401。前缀代表规则来源这也是快速定位某条规则属于哪个工具的关键。打开 crates/ruff_linter/src/rules/mod.rs 可以看到 Ruff 内置的59 个规则模块以下是常用的前缀速查表核心前缀速查按使用频率排序F— Pyflakes未使用的导入、语法错误类问题默认开启E/W— pycodestyle错误与警告级风格问题默认开启B— flake8-bugbear如B006可变默认参数、B904raise 应带 fromUP— pyupgrade如UP006typing.List→list默认开启I— isortimport 排序与分组SIM— flake8-simplify如SIM105可改用contextlib.suppressPL— pylint按严重度细分C约定/R重构/W警告/E错误RUF— Ruff 自有规则如RUF012class-var 注解缺失默认开启C90— mccabe 圈复杂度D— pydocstyle 文档字符串S— flake8-bandit 安全硬编码密钥、危险函数N— pep8-naming 命名PERF— perflint 性能PT— flake8-pytest-styleTRY— tryceratops 异常处理PTH— 建议改用 pathlibRET— 返回值简化FLY— f-string 转换ERA— 注释掉的代码TID— 导入整洁度LOG— logging 规范更多小众但实用的模块还包括AIRAirflow、FASTFastAPI、PANDpandas-vet、NPnumpy、DTZdatetime 时区、TCHtype-checking 导入等全部规则可查阅 docs/linter.md。 想弄清某条规则的语义分类Error/Warning/Convention/Refactor可参考 crates/ruff_linter/src/upstream_categories.rs它定义了各前缀与 Pylint 风格的严重度映射。3 行配置如何挑选你的规则集Ruff 通过pyproject.toml中的lint.select/lint.ignore选择规则组支持全码F401或前缀F两种粒度[tool.ruff.lint] # 启用 E、F 两个前缀的所有规则 select [E, F] # 单独关闭某条规则 ignore [F401]推荐的入门方案官方在 docs/linter.md 中给出的建议零配置直接跑Ruff 默认已开启F、E、B、UP、RUF等规则组足以捕获未使用导入、常见 Bug 等问题渐进式加码从小集合出发逐组加入。最流行的不啰嗦但够严格组合是EFUPBSIMI谨慎使用ALL它会启用全部 900 条规则且每次升级都会隐式启用新规则开启ALL时 Ruff 会自动禁用如D203与D211这类相互冲突的文档字符串规则。一键修复ruff check --fixRuff 的一大杀手锏是自动修复大量规则如删除未使用导入、现代化语法升级不仅报错还能直接改写代码。ruff check # 检查当前目录 ruff check --fix # 自动修复可修复的问题 ruff check --watch # 监听文件变化增量检查配合内置缓存未变更的文件不会重复分析大型仓库的日常检查几乎无感。快速上手安装与最小配置pip install ruff ruff check .如果仓库是从 GitCode 获取的git clone https://gitcode.com/GitHub_Trending/ru/ruff再写一个最小配置pyproject.toml[tool.ruff.lint] select [E, F, UP, B, SIM, I]到这里你的项目已经获得了一个比 Flake8 快百倍、规则覆盖面却广得多的检查器。后续想加文档字符串规范D、安全扫描S、复杂度控制C90只需在select里补一个前缀。总结一张清单带走你的需求Ruff 方案替代 Flake8 一堆插件一套前缀覆盖 Pyflakes/pycodestyle/Bugbear 等 59 个规则模块替代 Pylint 风格检查PL前缀 约定/重构/警告/错误四级分类替代 isort / pyupgradeI与UP前缀且支持自动修复大仓库性能瓶颈Rust 实现 内置缓存10~100 倍速度提升单条规则粒度的开关select/ignore精确到F401级别核心要点一句话先跑默认规则集再按需追加前缀最后用--fix让 Ruff 替你改代码。完整规则文档见 docs/linter.md规则源码索引见 crates/ruff_linter/src/rules/。【免费下载链接】ruffAn extremely fast Python linter and code formatter, written in Rust.项目地址: https://gitcode.com/GitHub_Trending/ru/ruff创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Harness Open Source 代码托管入门教程:仓库管理、分支保护与 Git LFS 一次搞懂

Harness Open Source 代码托管入门教程:仓库管理、分支保护与 Git LFS 一次搞懂

Harness Open Source 代码托管入门教程:仓库管理、分支保护与 Git LFS 一次搞懂 【免费下载链接】gitness Harness Open Source is an end-to-end developer platform with Source Control Management, CI/CD Pipelines, Hosted Developer Environments, and Artifa…

2026/11/12 8:25:11 阅读更多 →
微信聊天记录怎么导出成 HTML 和 CSV?留痕 WeChatMsg 上手指南

微信聊天记录怎么导出成 HTML 和 CSV?留痕 WeChatMsg 上手指南

微信聊天记录怎么导出成 HTML 和 CSV?留痕 WeChatMsg 上手指南 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/…

2026/11/12 8:25:11 阅读更多 →
告别npx:用Bun的bunx一键运行任何CLI工具的完整入门指南

告别npx:用Bun的bunx一键运行任何CLI工具的完整入门指南

告别npx:用Bun的bunx一键运行任何CLI工具的完整入门指南 【免费下载链接】bun Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one 项目地址: https://gitcode.com/GitHub_Trending/bu/bun bunx 是 Bun 内置的一…

2026/10/25 22:15:38 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/12 5:00:00 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/12 5:13:20 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/12 5:13:20 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/11 17:16:37 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/11 17:16:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/12 5:13:20 阅读更多 →

日新闻

周新闻

月新闻