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

Python中如何使用split函数将字符串拆分为列表?

发布时间:2023-05-19 21:19:25

Python中的split()函数可以将一个字符串按照指定的分隔符分成多个子字符串,然后将这些子字符串放入一个列表中返回。通常用于文本处理、文件分析、数据处理以及字符串拆分等操作。

语法格式

Python中split函数的语法格式如下:

str.split([sep[, maxsplit]])

参数说明:

1. sep:指定分隔符,默认为所有空字符(包括空格、换行符

、制表符\t等),可以是单个字符或多个字符组成的字符串。当sep为None时,表示使用空字符作为分隔符。

2. maxsplit:指定最大分割次数,默认为-1,表示全部切割。当maxsplit大于0时,表示最多切割maxsplit次,多余的部分不再进行切割。

例如:

str = "apple,banana,orange"

list = str.split(",")

print(list)

运行结果:

["apple", "banana", "orange"]

以上代码中,str为一个字符串,使用split()函数将其按照指定的分隔符","分隔,最后将分隔后的子串赋值给列表list。输出列表list时,显示["apple", "banana", "orange"]。

实例分析

下面我们通过不同的实例来进一步说明Python中如何使用split()函数将字符串拆分为列表。

实例1:以空格分隔字符串

我们将使用split()函数将一个由空格分隔的字符串拆分成多个子字符串,并将它们放入一个列表中。

代码实现如下:

str = "do you want some water"

list = str.split()

print(list)

运行结果:

['do', 'you', 'want', 'some', 'water']

以上代码中,我们定义了一个字符串str,它的值是"do you want some water"。使用split()函数将字符串按照空格分隔,生成一个子字符串的列表list,最后输出结果为['do', 'you', 'want', 'some', 'water'],每个子字符串代表了原始字符串中的每个单词。

实例2:以特定字符分隔字符串

在日常开发中,我们经常需要以指定的分隔符进行字符串的拆分。例如我们可以将一组数字以逗号或者分号分隔开来,再将其转换为整数或者浮点数的列表。

代码实现如下:

str_num = "12,13,14,15,16"

list_num = str_num.split(",")

print(list_num)

for i in range(len(list_num)):

list_num[i] = int(list_num[i])

print(list_num)

运行结果:

['12', '13', '14', '15', '16']

[12, 13, 14, 15, 16]

以上代码中,我们定义了一个字符串str_num,它的值是"12,13,14,15,16"。使用split()函数将字符串按照","分隔,生成一个子字符串的列表list_num,最后将其转换为整数列表list_num,输出结果为[12, 13, 14, 15, 16]。

实例3:分割到一定程度

当我们在使用split()函数拆分字符串时,有时候想要只分割一定程度。例如我们可以指定最大分割次数为2,这样只会分割前两个子字符串,后面的子串依然保持原样。

代码实现如下:

str = "I like python program very much"

list = str.split(" ", 2)

print(list)

运行结果:

['I', 'like', 'python program very much']

以上代码中,我们定义了一个字符串str,它的值是"I like python program very much"。使用split()函数将字符串按照空格分隔,生成一个子字符串的列表list,最后指定分割次数为2,输出结果为['I', 'like', 'python program very much']。

实例4:连续分隔字符串

在实际开发中,我们经常会遇到需要连续分隔字符串的场景。例如我们可以将一组日期字符串按照"-"、"/"两个字符进行分隔后,再将其转换为日期列表。

代码实现如下:

str_date = "2021-01-05/2021-02-10/2021-03-15"

list_date = []

for s in str_date.split("/"):

    list_date += s.split("-")

print(list_date)

运行结果:

['2021', '01', '05', '2021', '02', '10', '2021', '03', '15']

以上代码中,我们定义了一个日期字符串str_date,它的值是"2021-01-05/2021-02-10/2021-03-15"。使用split()函数先按照"/"进行分隔,生成一个列表后,对列表中的每个日期再次按照"-"分隔,最后生成一个日期的字符串列表,输出结果为['2021', '01', '05', '2021', '02', '10', '2021', '03', '15']。

总结

split()函数是Python中用于将字符串拆分为列表的常用函数。使用split()函数时,需要注意指定分隔符以及分隔次数。掌握split()函数的使用方法可以大大提高文本处理、文件分析以及数据处理的效率。