Python .split(";)和.split()之间有区别吗
python中的Python .split(";)和.split()之间有区别吗,python,split,Python,Split,python中的.split(“”)与.split()之间有根本区别吗? 我相信.split()的默认值是空白,因此这两个值应该是相同的,但我在hackerrank上得到的结果不同。如以下内容中所述: 如果未指定sep或是None,则会出现不同的拆分 应用算法:连续空格的运行被视为 单个分隔符,结果将不包含空字符串 如果字符串有前导或尾随空格,则为“开始”或“结束” 根据(对于Python 3.8,我的重点是): 如果未指定sep或是None,则会应用不同的拆分算法:连续空格的运行被视为一个单个
.split(“”)
与.split()
之间有根本区别吗?
我相信
.split()
的默认值是空白,因此这两个值应该是相同的,但我在hackerrank上得到的结果不同。如以下内容中所述:
如果未指定sep
或是None
,则会出现不同的拆分
应用算法:连续空格的运行被视为
单个分隔符,结果将不包含空字符串
如果字符串有前导或尾随空格,则为“开始”或“结束”
根据(对于Python 3.8,我的重点是):
如果未指定sep
或是None
,则会应用不同的拆分算法:连续空格的运行被视为一个单个分隔符,如果字符串具有前导或尾随空格,则结果的开头或结尾将不包含空字符串
所以,不,它们不是一回事。例如(注意A
和B
之间有两个空格,开头和结尾各有一个):
此外,连续空格表示任何空格字符,而不仅仅是空格:
>>> s = " A\t \t\n\rB "
>>> s.split()
['A', 'B']
>>> s.split(" ")
['', 'A\t', '', '\t\n\rB', '']
str.split的文档(sep=None,maxslit=-1)
。注:
如果未指定sep或sep为None,则应用不同的拆分算法:连续空格的运行被视为单个分隔符,如果字符串具有前导或尾随空格,则结果的开头或结尾将不包含空字符串。因此,拆分空字符串或仅包含空格且带有None分隔符的字符串将返回[]
>a=“你好,世界”
>>>a.拆分(“”)
[''你好',''世界','']
>>>a.拆分()
[“你好”,“世界”]
>>>b=“你好,世界”
>>>b.拆分(“”)
[你好,'','','','','','','','','','','','',世界']
>>>b.拆分()
[“你好”,“世界”]
>>>c=“”
>>>c.拆分(“”)
['', '', '', '', '', '', '', '']
>>>c.拆分()
[]
如果您对方法的行为感到困惑,请记住检查。您必须检查api文档中的字符串拆分方法。
>>> s = " A B "
>>> s.split()
['A', 'B']
>>> s.split(" ")
['', 'A', '', 'B', '']
>>> s = " A\t \t\n\rB "
>>> s.split()
['A', 'B']
>>> s.split(" ")
['', 'A\t', '', '\t\n\rB', '']