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

使用Python中的split()函数将字符串拆分为列表

发布时间:2023-06-24 18:59:45

Python中的split()函数是一种很常见的字符串函数,它能够将一个字符串按照指定的分隔符进行切割,并将切割后的结果返回一个列表。这个函数非常实用,可以用来处理多种不同场景下的字符串操作。

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

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

其中,str是要进行切割的原始字符串,sep是用来分隔原始字符串的分隔符,maxsplit参数用于指定切割的最大次数。如果不指定sep参数,则默认使用空格作为分隔符。

下面是split()函数的一些基本用法示例:

# 按空格分隔字符串
str1 = "hello world python"
list1 = str1.split()
print(list1)  # ['hello', 'world', 'python']

# 按指定分隔符分隔字符串
str2 = "a,b,c,d"
list2 = str2.split(",")
print(list2)  # ['a', 'b', 'c', 'd']

# 指定切割次数
str3 = "a_b_c_d_e"
list3 = str3.split("_",2)
print(list3)  # ['a', 'b', 'c_d_e']

上述代码中,我们使用split()函数来进行字符串的切割操作。在 个示例中,我们没有指定分隔符,所以默认使用空格进行了切割操作。在第二个示例中,我们手动指定了逗号作为分隔符。在第三个示例中,我们还使用了maxsplit参数,来指定切割的最大次数,这里我们指定为2,所以只切割了2次。

除了以上的基本用法外,split()函数还有一些比较实用的用法,下面我们来逐一进行讲解。

1. 按多个分隔符进行切割

在实际应用中,我们有时需要根据不同的分隔符对同一个字符串进行切割操作。针对这种情况,我们可以使用split()函数中的正则表达式,并使用“|”来表示多个分隔符。

下面是示例代码:

import re

str1 = "a_b|c,d-e"
list1 = re.split("_|\||,|-",str1)
print(list1)  # ['a', 'b', 'c', 'd', 'e']

在上面的代码中,我们首先导入了Python中的re模块,并使用了re.split()函数。在这个函数中,我们使用了正则表达式来定义多个分隔符,其中“|”表示或的意思。这样,我们就可以针对多个分隔符进行了切割操作,并将结果保存在了一个列表中。

2. 去除字符串的空格

在 Python 中,字符串对象内置有三个常用的去空格方法:

- strip() 删除两端的空格

- lstrip() 删除左侧的空格

- rstrip() 删除右侧的空格

下面是示例代码:

str1 = "  hello  "
list1 = str1.strip() # 'hello'
list2 = str1.lstrip() # 'hello  '
list3 = str1.rstrip() # '  hello'

在上面的代码中,我们首先定义了一个字符串,然后分别应用了strip()、lstrip() 和 rstrip() 方法。这三个方法都可以去除字符串内部的空格字符,这些字符包括一个空格字形、换行符、制表符等等其他不可见字符。

3. 剥离文本中的HTML代码

在实际应用中,我们有时需要对从 Web 页面上下载的 HTML 文件进行处理。这时候我们需要将 HTML 中的无用代码去掉,只保留纯文本。要实现这个功能,我们可以使用split()函数,并结合列表推导式来过滤掉里面的 HTML 标签。

以下是示例代码:

import re

html = """
<div>
    <h1>python news</h1>
    <ul>
        <li><a href='http://www.a.com'>站点 a</a></li>
        <li><a href='http://www.b.com'>站点 b</a></li>
    </ul>
</div>
"""

text = " ".join([s.strip() for s in re.split("<.*?>", html)])
print(text)  # 'python news 站点 a 站点 b'

在上面的代码中,我们首先定义了一段含有 HTML 标签的文本。然后应用了split()函数 + 列表推导式,来去除文本里面的 HTML 标签,最后使用join()方法进行拼接处理,得到了一个仅含有文本的字符串。

总结:

在Python中, split()函数是非常实用的字符串函数,它能够将一个字符串按照指定分隔符进行切割,并将结果保存在一个列表中。同样,Python中还提供了strip()、lstrip() 和 rstrip() 等函数,用于删除一个字符串中的空格。这两个函数的应用场景都比较广泛,在实际编程中可以灵活运用,提高我们的工作效率。