跳到内容

repeated-append (FURB113)

派生自 refurb 代码检查工具。

有时提供修复。

此规则不稳定且处于预览状态。使用需要 --preview 标志。

作用

检查对 append 的连续调用。

为什么这不好?

连续调用 append 的效率可能不如将它们批量处理到单个 extend 中。每次 append 都会单独调整列表大小,而 extend 可以为所有元素调整一次列表大小。

已知问题

由于类型推断的限制,此规则容易出现误报,因为它只会检测作为字面量实例化或使用类型注释注释的列表。

示例

nums = [1, 2, 3]

nums.append(4)
nums.append(5)
nums.append(6)

建议改为

nums = [1, 2, 3]

nums.extend((4, 5, 6))

参考