如何在 Python 中分割字符串
使用字符串时,常见的操作之一是使用给定的分隔符将字符串拆分为子字符串数组。
在本文中,我们将讨论如何在 Python 中拆分字符串。
.split()
方法
在 Python 中,字符串表示为不可变的 str
对象。字符串 str
类提供了一些字符串方法让你操作的字符串。
该 .split()
方法返回由分隔符分隔的子字符串列表。它采用以下语法:
str.split(delim=None, maxsplit=-1)
分隔符可以是字符或字符序列,而不是正则表达式。
在下面的示例中,我们使用逗号 ,
作为分隔符拆分字符串 s
。
s = 'Sansa,Tyrion,Jon'
s.split(',')
结果将是一个字符串列表:
['Sansa', 'Tyrion', 'Jon']
字符串文字通常用单引号括起来,但也可以使用双引号。
字符序列也可以用作分隔符:
s = 'Sansa::Tyrion::Jon'
s.split('::')
['Sansa', 'Tyrion', 'Jon']
参数 maxsplit
会限制字符串被分割后的最大的数量。如果未指定或 -1
,则分割数量没有限制。
s = 'Sansa;Tyrion;Jon's.split(';', 1)
结果列表将包含最多 maxsplit+1
元素:
['Sansa', 'Tyrion;Jon']
如果 delim
未指定或者设置为 Null
,则将使用连续空格作为分隔符来拆分字符串。所有连续的空格都被视为单个分隔符。此外,如果字符串包含尾随和前导空格,则结果将没有空字符串。
为了更好地说明这一点,我们来看看下面的例子:
' Daenerys Hodor Arya Jaime Bran '.split()
['Daenerys', 'Hodor', 'Arya', 'Jaime', 'Bran']
' Daenerys Hodor Arya Jaime Bran '.split(' ')
['', 'Daenerys', '', 'Hodor', 'Arya', '', '', 'Jaime', 'Bran', '']
如果未使用分隔符,则返回列表不包含空字符串。如果分隔符设置为空格 ' '
,则前导,尾随和连续的空格将导致结果包含空字符串。
结论
拆分字符串是最基本的操作之一。阅读本教程后,您应该很好地理解如何在 Python 中拆分字符串。