使用?sep?作为分隔字符串,返回一个由字符串内单词组成的列表。如果给出了?maxsplit,则最多进行?maxsplit?次拆分(因此,列表最多会有?maxsplit+1?个元素)。 如果?maxsplit?未指定或为?-1,则不限制拆分次数(进行所有可能的拆分)。如果给出了?sep,则连续的分隔符不会被组合在一起而是被视为分隔空字符串 (例如?'1,,2'.split(',')?将返回?['1',?
'',?
'2'])。?sep?参数可能由多个字符组成 (例如?'1<>2<>3'.split('<>')?将返回?['1',?
'2',?
'3'])。 使用指定的分隔符拆分空字符串将返回?['']。
例子:
#
argument1 = 'abc,dfi,12345,9809'
argument2 = '123,,,4567'
arg3 = '? abc? bb?? dcc?? '
arg4=''
arg5=' '
print(argument1.split(','))
print(argument1.split(',',maxsplit=1))
print(argument2.split(','))
print(arg3.split(' '))
#? sep 未指定或为 None,则会应用另一种拆分算法:连续的空格会被视为单个分隔符,其结果将不包含开头或末尾的空字符串,如果字符串包含前缀或后缀空格的话。
print(arg3.split())
#? 使用 None 拆分空字符串或仅包含空格的字符串将返回 []
print(arg4.split())
#? 使用 None 拆分空字符串或仅包含空格的字符串将返回 []
print(arg5.split())
结果:
['abc', 'dfi', '12345', '9809']
['abc', 'dfi,12345,9809']
['123', '', '', '4567']
['', '', 'abc', '', 'bb', '', '', 'dcc', '', '', '']
['abc', 'bb', 'dcc']
[]
[]
相当于split(),只不过从右边开始。
例子:
#
argument1 = 'abc,dfi,12345,9809'
argument2 = '123,,,4567'
arg3 = '? abc? bb?? dcc?? '
arg4=''
arg5=' '
print(argument1.rsplit(','))
print(argument1.rsplit(',',maxsplit=1))
print(argument2.rsplit(','))
print(arg3.rsplit(' '))
#? sep 未指定或为 None,则会应用另一种拆分算法:连续的空格会被视为单个分隔符,其结果将不包含开头或末尾的空字符串,如果字符串包含前缀或后缀空格的话。
print(arg3.rsplit())
#? 使用 None 拆分空字符串或仅包含空格的字符串将返回 []
print(arg4.rsplit())
#? 使用 None 拆分空字符串或仅包含空格的字符串将返回 []
print(arg5.rsplit())
结果:
['abc', 'dfi', '12345', '9809']
['abc,dfi,12345', '9809']
['123', '', '', '4567']
['', '', 'abc', '', 'bb', '', '', 'dcc', '', '', '']
['abc', 'bb', 'dcc']
[]
[]
按行拆分字符串,返回一个列表。
以下都被视为行的结束:
符号 | 描述 |
\n | 换行 |
\r | 回车 |
\r\n | 回车+换行 |
\v或\x0b | 行制表符 |
\f或\x0c | 换表单 |
\x1c | 文件分隔符 |
\x1d | 组分隔符 |
\x1e | 记录分隔符 |
\x85 | 下一行(C1控制码) |
\u2028 | 行分隔符 |
\u2029 | 段分隔符 |
splitlines和split不同的是对于空字符串,splitlines不会处理末尾的行。
例子:
#
arg1 = 'ab c\n\nde fg\rkl\r\n'
arg2 = 'ab c\n\nde fg\rkl\r\n'
arg3 = 'One line\n'
arg4='Two lines\n'
arg5=' '
arg6=''
print(arg1.splitlines())
print(arg1.splitlines(keepends=True))
print(arg2.splitlines())
print(arg3.splitlines())
print(arg4.splitlines())
print(arg4.split('\n'))
print(arg5.splitlines())
print(arg6.splitlines())
结果:
['ab c', '', 'de fg', 'kl']
['ab c\n', '\n', 'de fg\r', 'kl\r\n']
['ab c', '', 'de fg', 'kl']
['One line']
['Two lines']
['Two lines', '']
[' ']
[]