在以下示例中,我将一个空字符串拆分为一个空格。但是,在第一个示例中,我明确地使用了空格,而在第二个示例中,我没有使用。我的理解是.split()
和.split(' ')
是等效的。
这两个示例为什么给出不同的输出?
In [1]: "".split(' ')
Out[1]: ['']
In [2]: "".split()
Out[2]: []
答案 0 :(得分:3)
从python的documentation-
如果未指定sep或将其设置为None,则将应用不同的拆分算法:连续的空白行将被视为单个分隔符,并且如果字符串的开头或结尾处为空白,则结果将不包含空字符串空格。因此,使用空分隔符分割空字符串或仅包含空格的字符串将返回[]。
Sep是分隔符。它的意思是,如果我们不传递任何内容进行拆分,空格被视为分隔符,则会应用其他算法来拆分字符串,并将返回{ 1}},但是由于您通过了Sep ,它将不应用此算法