【发布时间】:2018-07-19 07:43:02
【问题描述】:
在以下示例中,我用空格分隔空字符串。但是,在第一个示例中,我明确使用了空格,而在第二个示例中,我没有。我的理解是.split() 和.split(' ') 是等价的。
为什么这两个例子给出不同的输出?
In [1]: "".split(' ')
Out[1]: ['']
In [2]: "".split()
Out[2]: []
【问题讨论】:
在以下示例中,我用空格分隔空字符串。但是,在第一个示例中,我明确使用了空格,而在第二个示例中,我没有。我的理解是.split() 和.split(' ') 是等价的。
为什么这两个例子给出不同的输出?
In [1]: "".split(' ')
Out[1]: ['']
In [2]: "".split()
Out[2]: []
【问题讨论】:
来自python的documentation-
如果 sep 未指定或为 None,则应用不同的分割算法:连续的空格被视为单个分隔符,如果字符串有前导或尾随,结果将在开头或结尾不包含空字符串空白。因此,使用 None 分隔符拆分空字符串或仅包含空格的字符串将返回 []。
Sep 是分隔符。它的意思是,如果我们不传递任何内容进行拆分,空格被视为分隔符,它将应用不同的算法来拆分字符串并返回@987654322 @ 但由于您通过了一个 sep,它将不应用此算法
【讨论】: