首页 > 解决方案 > .split() 是如何工作的?- Python

问题描述

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

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

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

In [2]: "".split()
Out[2]: []

标签: pythonstringsplit

解决方案


从python的文档-

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

Sep 是分隔符。它说的是,如果我们不传递任何东西来分割,空格被认为是分隔符,它将应用不同的算法来分割字符串并返回给我们 a[]但是由于你传递了 sep,它不会应用这个算法


推荐阅读