理解python中的split()函数
为什么这段代码在结果列表中返回3个字符串理解python中的split()函数,python,python-3.x,Python,Python 3.x,为什么这段代码在结果列表中返回3个字符串 def猫狗(字符): n1=字符。拆分('cat') 打印(n1) 返回len(n1) 在执行代码时,我得到以下信息。为什么我的列表中有3个字符串?我试图理解split()方法是如何工作的。我希望只看到2个字符串,因为我在cat处拆分字符串catcat——不知道为什么拆分后新列表中有3个字符串 cat_dog('catcat') ['', '', ''] 3 根据: string.split(s[,sep[,maxslit]]):如果第二个参数s
def猫狗(字符):
n1=字符。拆分('cat')
打印(n1)
返回len(n1)
在执行代码时,我得到以下信息。为什么我的列表中有3个字符串?我试图理解split()
方法是如何工作的。我希望只看到2个字符串,因为我在cat
处拆分字符串catcat
——不知道为什么拆分后新列表中有3个字符串
cat_dog('catcat')
['', '', '']
3
根据:
string.split(s[,sep[,maxslit]])
:如果第二个参数sep存在而不是无,则它指定一个字符串用作单词分隔符
因此characters.split('cat')
将返回一个数组,其中字符串由单词cat
表示。如果您将调用“1cat2cat3.split('cat')
,您将得到[“1”、“2”、“3”]
在您的例子中,字符串catcat
可以表示为'+'cat'+'+'+'cat'+'
,因此'catcat'.split('cat')
将根据以下内容返回['','',']
:
string.split(s[,sep[,maxslit]])
:如果第二个参数sep存在而不是无,则它指定一个字符串用作单词分隔符
因此characters.split('cat')
将返回一个数组,其中字符串由单词cat
表示。如果您将调用“1cat2cat3.split('cat')
,您将得到[“1”、“2”、“3”]
在您的例子中,字符串catcat
可以表示为'+'cat'+'+'+'cat'+'
,因此'catcat'.split('cat')
将返回['','']
应回答您的问题:
引述如下:
…分隔符。。。被视为分隔空字符串(例如,'1,2'.split(',')
返回['1',''2']
)
在您的情况下,字符串catcat
被视为:
'catcat'
以cat
作为分隔符。应回答您的问题:
引述如下:
…分隔符。。。被视为分隔空字符串(例如,'1,2'.split(',')
返回['1',''2']
)
在您的情况下,字符串catcat
被视为:
'catcat'
以cat
作为分隔符。两个分割点表示三个字符串。文档的某些部分是否让您感到困惑?如果是,请您讨论一下好吗?第一个cat
之前的空字符串,介于cat
和cat
之间的空字符串,最后一个cat
之后的空字符串。总共有3个空字符串。这个例子听起来很傻,但它就是这样工作的。我尝试了这个,只得到了2个字符串:catu dog('catdog')[''dog']2为什么我得到3个字符串作为重复字符串,比如'catcat',而不是'catdog'?因为。。。catdog
中只有一个cat
,但是catcat
中有两个?这样想:用逗号(,
)替换每一个cat
,您将看到它是如何工作的。第一个变成,
,第二个变成,dog
。实际上我现在明白了。谢谢Selcukt两个分割点意味着三个字符串。文档的某些部分是否让您感到困惑?如果是,请您讨论一下好吗?第一个cat
之前的空字符串,介于cat
和cat
之间的空字符串,最后一个cat
之后的空字符串。总共有3个空字符串。这个例子听起来很傻,但它就是这样工作的。我尝试了这个,只得到了2个字符串:catu dog('catdog')[''dog']2为什么我得到3个字符串作为重复字符串,比如'catcat',而不是'catdog'?因为。。。catdog
中只有一个cat
,但是catcat
中有两个?这样想:用逗号(,
)替换每一个cat
,您将看到它是如何工作的。第一个变成,
,第二个变成,dog
。实际上我现在明白了。谢谢Selcuk