.split() 如何工作?- Python

wha*_*000 -1 python string split

在下面的例子中,我用一个空格分割一个空字符串。但是,在第一个示例中,我明确使用了空格,而在第二个示例中,我没有。我的理解是,.split()并且.split(' ')是等价的。

为什么这两个例子给出不同的输出?

In [1]: "".split(' ')
Out[1]: ['']

In [2]: "".split()
Out[2]: []
Run Code Online (Sandbox Code Playgroud)

Sus*_*ant 5

来自 python 的文档-

如果未指定 sep 或为 None ,则应用不同的拆分算法:将连续空格的运行视为单个分隔符,如果字符串有前导或尾随空格,则结果将在开头或结尾不包含空字符串。因此,拆分空字符串或仅由空格组成的字符串与 None 分隔符将返回 []。

Sep 是分隔符。它说的是,如果我们不传递任何要拆分的内容,则将空格视为分隔符,它将应用不同的算法来拆分字符串并返回 a[]但由于您传递了 sep,它不会应用此算法