原文: Python .split() – Splitting a String in Python
在本文中,你将学习如何在 Python 中拆分字符串。
首先,我将向你介绍 .split()
方法的语法。之后,你将看到如何使用带参数和不带参数的 .split()
方法,同时使用代码示例。
以下是我们将介绍的内容:
.split()
方法语法.split()
方法如何在没有任何参数的情况下运行.split()
方法带有separator
参数如何运行.split()
方法带有maxsplit
参数如何运行
Python 中的 .split() 方法是什么?.split() 方法语法分解
你可以使用 .split()
方法将字符串拆分为列表。
.split()
方法的一般语法如下所示:
string.split(separator, maxsplit)
让我们分解一下:
string
是要拆分的字符串,这是你调用.split()
方法的字符串。.split()
方法接受两个参数。- 第一个可选参数是
separator
,它指定使用哪种分隔符来分割字符串。如果未提供此参数,则默认值为空格,这意味着只要.split()
遇到空格,字符串就会拆分。 - 第二个可选参数是
maxsplit
,它指定.split()
方法应该执行的最大拆分数。如果未提供此参数,则默认值为-1
,这意味着拆分的数量没有限制,并且.split()
应该在遇到separator
的所有匹配项上拆分字符串。
.split()
方法返回一个新的子字符串列表,并且不会以任何方式修改原始字符串。
.split() 方法如何在没有任何参数的情况下运行?
以下是使用 .split()
方法将字符串拆分为列表的方法,没有任何参数:
coding_journey = "I am learning to code for free with freeCodecamp!"
# 将字符串拆分为列表并将结果保存到新变量中
coding_journey_split = coding_journey.split()
print(coding_journey)
print(coding_journey_split)
# 使用 type() 函数检查 coding_journey_split 的数据类型
print(type(coding_journey_split))
# 输出
# I am learning to code for free with freeCodecamp!
# ['I', 'am', 'learning', 'to', 'code', 'for', 'free', 'with', 'freeCodecamp!']
# <class 'list'>
输出显示组成字符串的每个单词现在都是一个列表项,并且保留了原始字符串。
当你不传递 .split()
方法接受的两个参数中的任何一个时,默认情况下,它会在每次遇到空格时拆分字符串,直到字符串结束。
如果你不向 .split()
方法传递任何参数,并且遇到连续的空格而不是一个空格,会发生什么情况?
coding_journey = "I love coding"
coding_journey_split = coding_journey.split()
print(coding_journey_split)
# 输出
# ['I', 'love', 'coding']
在上面的示例中,我在单词 love
和单词 coding
之间添加了连续的空格。在这种情况下,.split()
方法将任何连续的空格视为一个单独的空格。
.split() 方法带有 separator 参数如何运行?
正如你之前看到的,当没有 separator
参数时,它的默认值为空格。也就是说,你可以设置不同的分隔符。
separator
将在遇到你指定的字符时中断和分割字符串,并将返回子字符串列表。
例如,你可以使字符串在 .split()
方法遇到点 .
时拆分:
fave_website = "www.freecodecamp.org"
fave_website_split = fave_website.split(".")
print(fave_website_split)
# 输出
# ['www', 'freecodecamp', 'org']
在上面的示例中,每当 .split()
遇到 .
,字符串将拆分。
请记住,我没有指定一个点后跟一个空格。这是行不通的,因为字符串不包含点后跟空格:
fave_website = "www.freecodecamp.org"
fave_website_split = fave_website.split(". ")
print(fave_website_split)
# 输出
# ['www.freecodecamp.org']
现在,让我们重温上一节中的最后一个示例。
当没有 separator
参数时,连续的空格被视为单个空格。
但是,当你指定单个空格作为 separator
时,字符串会在每次遇到单个空格字符时拆分:
coding_journey = "I love coding"
coding_journey_split = coding_journey.split(" ")
print(coding_journey_split)
# 输出
# ['I', 'love', '', '', 'coding']
在上面的示例中,每次 .split()
遇到空格字符时,它都会拆分单词并将空格添加为列表项。
.split() 方法带有 maxsplit 参数如何运行?
当没有 maxsplit
参数时,没有指定何时停止拆分的限制。
在上一节的第一个示例中,.split()
每次遇到 separator
时都会拆分字符串,直到到达字符串的末尾。
但是,你可以指定希望何时结束拆分。
例如,你可以指定拆分在遇到一个 .
后结束:
fave_website = "www.freecodecamp.org"
fave_website_split = fave_website.split(".", 1)
print(fave_website_split)
# 输出
# ['www', 'freecodecamp.org']
在上面的示例中,我将 maxsplit
设置为 1
,并创建了一个包含两个列表项的列表。
我指定列表在遇到一个点时应该拆分。一旦遇到一个点,操作将结束,字符串的其余部分将单独成为一个列表项。
总结
你现在知道了如何在 Python 中使用 .split()
方法拆分字符串。
我希望本教程对你有所帮助。
要了解有关 Python 编程语言的更多信息,请查看 freeCodeCamp 的 Python 认证。你将从基础开始,通过对初学者友好的互动方式学习。最后,你还将构建五个项目以巩固你所学的知识。
祝你编程愉快!