跳到内容

missing-maxsplit-arg (PLC0207)

源自 Pylint 代码检查工具。

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

作用

检查对 str.split()str.rsplit() 的第一个或最后一个元素的访问,但缺少 maxsplit=1

为什么这不好?

调用 str.split()str.rsplit() 时,如果没有传递 maxsplit=1,则会在字符串中的每个分隔符处进行拆分。当只访问结果的第一个或最后一个元素时,只拆分一次会更有效率。

示例

url = "www.example.com"
prefix = url.split(".")[0]

建议改为

url = "www.example.com"
prefix = url.split(".", maxsplit=1)[0]

要访问最后一个元素,请使用 str.rsplit() 代替 str.split()

url = "www.example.com"
suffix = url.rsplit(".", maxsplit=1)[-1]