python第三节:Str字符串类型(7)

发布时间:2024年01月18日

str.split(sep=None,?maxsplit=-?1)

使用?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']

[]

[]

str.rsplit(sep=None,?maxsplit=-?1)

相当于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']

[]

[]

str.splitlines(keepends=False)

按行拆分字符串,返回一个列表。

以下都被视为行的结束:

符号

描述

\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', '']

[' ']

[]

文章来源:https://blog.csdn.net/buw369521/article/details/135665570
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。