python字符串内容分割

归来是少年 / 2023-08-29 / 原文

分隔主要涉及到split,rsplit,splitlines,partition和rpartition五个方法。

split

以指定字符串为分隔符切片,如果 maxsplit有指定值,则仅分隔 maxsplit+1 个子字符串。返回的结果是一个列表。
没有指定分隔符,默认使用空格,换行等空白字符进行分隔

char = "hello\nworld"
result = char.split()
print(result) # ['hello', 'world']

result = char.split('l')  # 以 'l' 为分隔符
print(result) # ['he', '', 'o\nwor', 'd']

result = char.split("l",2) # 以 'l' 为分隔符,最多切割成3份
print(result) # ['he', '', 'o\nworld']

rsplit

用法和split基本一致,只不过是从右往左分隔

char = '今天天气好晴朗,处处好风光呀好风光'
print(char.rsplit('好',1))  #['今天天气好晴朗,处处好风光呀', '风光']

splitlines

按照行分隔

char = "hello\nworld"
result = char.splitlines()
print(result)  # ['hello', 'world']

partition

把字符串以str分割成三部分,str前,str和str后,三部分组成一个元组
场景:比如用来分割文件,第一部分文件名,第二部分 .(点),第三部分文件后缀

file = "abc.txt"
print(file.partition("."))  # ('abc', '.', 'txt')

rpartition

类似于 partition()函数,不过是从右边开始

char = "今天天气好晴朗,处处好风光呀好风光"
print(char.rpartition("好")) # ('今天天气好晴朗,处处好风光呀', '好', '风光')