欢迎访问宙启技术站
智能推送

Python中的split()函数详解及实用示例

发布时间:2023-06-18 16:52:04

split()函数是Python中内置字符串(str)对象的函数之一。他可以将字符串按照指定分隔符(delimiter)分割成若干个子字符串,并将结果以列表的形式返回。

split()函数有一个可选参数sep,用来指定分割符,如果不指定,则默认以空格(空白字符)作为分割符。返回的列表中不包含分割符本身。

下面是split()函数的语法格式:

str.split(sep=None, maxsplit=-1)

参数说明:

- sep: 指定分隔符,默认为None,表示以空白字符(空格,换行,tab等)作为分隔符。

- maxsplit: 可选参数,表示最多分割的次数。默认为-1,表示不限制次数。

返回值: 返回分割后的字符串列表。

示例1:分隔器为默认

text = "hello world"
print(text.split())  # ['hello', 'world']

该例中,字符串 text 以默认分隔符(空格)分隔成 “hello”和 “world”两个部分。

示例2:指定分隔器

在以下示例中,字符串 text 以“,”(逗号)分隔。分割后会产生三个元素列表。

text = "apple,banana,orange"
print(text.split(','))  # ['apple', 'banana', 'orange']

该例中,字符串 text 以“,”(逗号)分隔成 “apple”、“banana” 和 “orange”三个部分。

示例3:最大分割数

以下示例中,字符串 text 以“-”(连字号)分隔成两个部分。由于maxsplit参数值为1,因此最多只能分割一次。

text = "Python - is awesome - and powerful"
print(text.split('-', 1))  # ['Python ', ' is awesome - and powerful']

注意: 分隔符只出现在列表中第一次出现时进行分割。因此,使用描述分隔符只出现在位于中间的部分的文本分割,得到的列表中不会包含分隔符。

示例4:使用函数进行更改

以下示例中,函数 munge() 对每个列表元素取反并返回。此函数传递给 map() 函数可以将列表中的每个元素都取反。

text = "Python - is awesome - and powerful"
def munge(x):
    return x[::-1]
print(list(map(munge, text.split('-'))))  # ['nohtyP ', ' si emosewa ', ' dna lufrewop']

上述代码分割由“-”组成的文本,通过将函数 munge() 应用于结果列表中的每个元素来进行更改。这反转了分割的结果列表中的每个字符串。最后,它通过将结果列表返回到 list() 的显式调用中将其转换回列表。