Python 字符串 split() 方法



Python 字符串split()方法将字符串中所有由指定分隔符分隔的单词分割开来。此分隔符是一个分隔符字符串,可以是逗号、句号、空格字符或任何其他用于分隔字符串的字符。

通常,如果多个分隔符组合在一起,该方法将其视为一个空字符串。但是,如果没有指定分隔符或为None,并且字符串由连续的空格组成;它们被视为单个分隔符,如果字符串具有前导或尾随空格,则结果将不包含开头或结尾的空字符串。因此,使用 None 分隔符分割空字符串或仅包含空格的字符串将导致空字符串。

语法

以下是 Python 字符串split()方法的语法:

str.split(str="", num=string.count(str)).

参数

  • sep - 这是任何分隔符,默认为空格。

  • maxsplit - 这是行数减一

返回值

此方法返回一个行列表。

示例

当我们不向方法传递任何参数时,默认字符(空格)被视为参数。在这种情况下,split() 方法在分隔字符串后返回行列表。

str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print(str.split( ))
print(str.split(' ', -1))

当我们运行上述程序时,它会产生以下结果。对于第一种情况,甚至其他分隔符,如换行符 (\n),也会被移除。

['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc', '\nLine4-abcd']

示例

将已知分隔符作为参数传递给方法,以获得结果值作为分隔的行列表。

在这个例子中,我们取两个字符串作为输入;两者都包含分隔符。我们通过传递所需的分隔符作为参数,在两个字符串上调用 split() 方法。

str1 = "abcde, 12345, !@#$%";
str2 = "14<65<189<235<456"
print(str1.split(','))
print()
print(str2.split('<'))

上述程序的输出如下:

['abcde', '12345', '!@#$%']
['14', '65', '189', '235', '456']

示例

在下面的示例中,我们使用 split() 方法通过传递点 (.) 作为参数来分隔十进制数的整数部分和小数部分。

str = "123.748289";
print("Separating the integer and decimal from the input number:")
print(str.split('.'))

让我们执行上面的程序以获得如下输出:

Separating the integer and decimal from the input number:
['123', '748289']

示例

当我们传递分隔符参数,但分隔符参数在字符串中组合在一起时;该方法将其视为空字符串。

在下面的示例中,我们创建一个值为“aaa,,ccc,ddd,eee”的字符串,并使用逗号 (,) 作为参数在其上调用 split() 方法。由于给定的字符串包含组合在一起的逗号;该方法为每个存在的逗号分隔符返回空字符串。

str = "aaa,,ccc,ddd,eee";
print(str.split(','))

上述程序的输出显示如下:

['aaa', '', 'ccc', 'ddd', 'eee']

示例

当我们传递maxsplit参数时,该方法返回一个最多分割到指定索引的行列表。

str = "aaa,bbb,ccc,ddd,eee";
print(str.split(',', 2))

如果我们执行上面的程序,则输出如下:

['aaa', 'bbb', 'ccc,ddd,eee']
python_strings.htm
广告
© . All rights reserved.