Python String split() 函数用法

2023-09-17 22:22:50

split() 方法从指定的分隔符中拆分字符串,并返回包含字符串元素的列表对象。 默认分隔符是任何空格字符,例如空格、\t\n等。

语法:

str.split(separator, maxsplit)

参数:

分隔符
  1. :(可选)分隔符字符串。默认分隔符是任何空格字符,例如空格、\t\n等。
  2. 最大拆分:(可选)定义可以执行的最大拆分数。因此,该列表最多可以包含maxsplit + 1个元素。默认的最大拆分为 -1,表示无限拆分。

返回值:

返回包含字符串元素的列表对象。

下面的示例演示 split() 方法的简单用法。

mystr = 'Hello World'
print(mystr.split())
print('Hello     World'.split())
print('Hello\tWorld'.split())
print('Hello\nWorld'.split())
print('Hello\u2028World'.split())

输出:

['Hello', 'World']
['Hello', 'World']
['Hello', 'World']
['Hello', 'World']
['Hello', 'World']

在上面的示例中,所有字符串都以默认空格字符(如"、"、"\t"和"\ ")拆分,并返回一个列表['Hello', 'World']。 甚至它在行分隔符"\u2028"的 Unicode 字符处拆分。

下面的示例指定分隔符。

langs = 'C,Python,R,Java,SQL,Hadoop'
print(langs.split(','))
fruits = 'apples$banana$mango$fig$pear'
print(fruits.split('$'))

输出:

['C', 'Python', 'R', 'Java', 'SQL', 'Hadoop']
['apples', 'banana', 'mango', 'fig','pear']

在上面的示例中,langs.split(',')将逗号,指定为分隔符,fruits.split('$')将逗号$指定为分隔符。 因此,split() 方法将在每个分隔符处拆分一个字符串,并将字符串的每个部分包含在列表中。

如果指定的分隔符不存在,则返回一个列表,其中包含整个字符串作为元素。

langs = 'C,Python,R,Java,SQL,Hadoop'
print(langs.split('@'))

输出:

['C,Python,R,Java,SQL,Hadoop']

注意:如果分隔符是空字符串'',则split()方法将引发ValueError

下面的示例通过指定 maxsplit 参数来限制拆分。

langs = 'C,Python,R,Java,SQL,Hadoop'
print(langs.split(',', 3))
fruits = 'apples$banana$mango$fig$pear'
print(fruits.split('$', 2))

输出:

['C', 'Python', 'R', 'Java,SQL,Hadoop']
['apples', 'banana', 'mango$fig$pear']

在上面的示例中,langs.split(',', 3)指定 3 作为 maxsplit 参数,因此它将拆分langs字符串 3 次,因此列表对象包含四个元素。第四个元素是剩余的字符串。 同样,fruits.split('$', 2)最多拆分两次,返回的列表将包含三个元素。