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

如何阻止Black为链式代码添加括号?涉及哪些规则?

解决Black自动给链式调用添加括号换行的问题

阻止该行为的两种方法

  • 调整行长度限制:Black默认以88字符作为行长度上限,当你的链式调用代码总长度超过这个值时,就会触发加括号换行的逻辑。你可以在项目的pyproject.toml配置文件里增大这个阈值,比如:
    [tool.black]
    line-length = 120
    
    只要代码行长度不超过设定值,Black就会保留原有单行格式。
  • 跳过指定代码的格式化:如果不想调整全局配置,直接在目标代码行末尾加上# fmt: skip注释,强制Black不修改这段代码的格式:
    longfunc(long_arg1, long_arg2...).longfunct().longfunct().longfunct()  # fmt: skip
    

触发该行为的规则

这个格式化行为是Black默认的长行链式调用处理逻辑:当链式调用的整体长度超过配置的line-length阈值时,Black会自动将整个调用包裹在括号内并拆分每行一个方法调用,以此保证代码行长度符合要求,提升可读性。这是Black核心格式化规则的一部分,没有单独的开关控制该行为,只能通过上述两种方式规避。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 19:07:04