Python程序将字符串拆分为多个子字符串

WBOY
发布: 2023-09-04 19:17:06
转载
1523 人浏览过

Python程序将字符串拆分为多个子字符串

在 Python 中,我们可以使用 split() 方法将字符串拆分为子字符串。 split() 方法是内置的 Python 字符串方法之一,它根据指定的分隔符将字符串拆分为子字符串列表。在本文中,我们将借助示例学习如何将字符串拆分为子字符串。

将字符串拆分为子字符串

方法一:使用split()方法

split()方法是Python中字符串的内置方法,它根据指定的分隔符将字符串拆分为子字符串列表。分隔符可以是分隔子字符串的任何字符或字符串。 split() 方法采用一个参数,即分隔符。如果没有指定分隔符,它将把字符串分割成单个字符。

示例:分别根据空格和逗号分隔符进行分割

在下面的示例中,我们将使用空格分隔符分割字符串。我们使用 split() 方法并传递空格分隔符来根据空格分割字符串。

string = "Hello World"
substrings = string.split()
print(substrings)

string1 = "apple,banana,orange"
substrings = string1.split(",")
print(substrings)
登录后复制

输出

['Hello', 'World']
['apple', 'banana', 'orange']
登录后复制

示例:使用正则表达式拆分

在下面的示例中,我们使用正则表达式模块中的 split() 函数,使用破折号和空格分隔符将字符串“23-456-7890”拆分为三个子字符串。

import re

string = "123-456-7890"
substrings = re.split("-|\s", string)
print(substrings)
登录后复制

输出

['123', '456', '7890']
登录后复制

方法 2:使用列表理解

列表推导式是在 Python 中创建列表的一种简洁方法。它允许您基于现有列表或其他可迭代对象创建新列表,同时还应用过滤条件并对可迭代的元素执行转换。

语法

new_list = [expression for item in iterable if condition]
登录后复制

其中“表达式”是要对可迭代的每个元素执行的转换或操作,“项目”是当前正在处理的元素,“可迭代”是元素的源,“条件”是可选的过滤确定某个元素是否包含在结果列表中的条件。

示例

在下面的示例中,我们从一个名为“sentence”的字符串开始,其中包含一系列由空格分隔的单词。我们使用 split() 方法将字符串拆分为单词列表,然后使用列表理解创建一个名为“words”的新列表,其中包含原始字符串中的每个单词。

sentence = "The quick brown fox jumps over the lazy dog"
words = [word for word in sentence.split()]
print(words)
登录后复制

输出

['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']
登录后复制

方法3:使用partition()方法

partition()方法是Python中字符串的内置方法,它根据指定的分隔符将字符串分割成三部分。它返回一个元组,其中包含分隔符之前的字符串的左侧部分、分隔符本身以及分隔符之后的字符串的右侧部分。如果在字符串中找不到分隔符,该方法将返回一个包含原始字符串的元组,后跟两个空字符串。

语法

string.partition(delimiter)
登录后复制

这里,字符串是您要拆分的字符串,分隔符是您希望分区函数拆分字符串所依据的分隔符。

示例

在下面的示例中,我们使用partition()方法来分割字符串“Hello World!”根据空间分隔符分为三个部分。生成的元组包含左侧部分“Hello”、分隔符“”和右侧部分“World!”。

string = "Hello World!"
parts = string.partition(" ")
print(parts)
登录后复制

输出

('Hello', ' ', 'World!')
登录后复制

方法4:使用splitlines()函数

splitlines()方法是Python中字符串的内置方法,它根据换行符“n”将字符串分割成行列表。如果字符串不包含任何换行符,则返回一个列表,其中包含原始字符串作为其唯一元素。

语法

string.splitlines()
登录后复制

这里,splitlines() 不带任何参数,并且始终根据换行符分割字符串。

示例

在下面的示例中,我们使用 splitlines() 方法将字符串“Line 1nLine 2nLine 3”拆分为行列表。结果列表包含三个元素,每个元素对应原始字符串中的每一行。

string = "Line 1\nLine 2\nLine 3"
lines = string.splitlines()
print(lines)
登录后复制

输出

['Line 1', 'Line 2', 'Line 3']
登录后复制

方法5:使用re.findall()方法

re.findall() 方法是 Python 中 re 模块中的一个函数,它在字符串中搜索所有出现的指定正则表达式模式,并返回所有匹配项的列表。正则表达式模式可以包含代表不同类型字符或序列的各种字符,从而允许进行复杂的模式匹配和提取字符串的特定部分。

语法

re.findall(regular_expression, string)
登录后复制

这里,re.findall() 方法采用正则表达式来查找字符串中匹配单词的出现情况,该字符串也传递给 findall() 函数。

示例

在下面的示例中,我们使用 re.findall() 方法来搜索字符串中出现的所有正则表达式模式 bw{5}b。此模式与由单词边界(即单词的开头或结尾)包围的任何五个单词字符(字母、数字或下划线)序列匹配。 re.findall() 方法返回在字符串中找到的所有匹配项的列表。

import re

string = "The quick brown fox jumps over the lazy dog"
matches = re.findall(r"\b\w{5}\b", string)
print(matches)
登录后复制

输出

['quick', 'brown', 'jumps']
登录后复制

结论

在本文中,我们讨论了如何在 Python 中使用 split() 函数、使用列表理解、使用分区方法、使用 splitline 方法以及使用 re.findall() 将字符串拆分为多个子字符串方法。 split() 函数采用分隔符作为参数。然后根据该分隔符分割字符串。 splitline 方法始终根据新行分隔符分割字符串。我们可以使用本文中介绍的任何方法,具体取决于我们想要执行的拆分类型。

以上是Python程序将字符串拆分为多个子字符串的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板