Python String Split() 方法

游客2024-06-20 04:18:56

Python string split() 函数用于根据分隔符将字符串拆分为字符串列表。

Python string split() 函数语法

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

sep 参数用作分隔符。如果字符串包含连续分隔符,则返回一个空字符串。分隔符参数也可以由多个字符组成。

如果未提供分隔符或 None,则将空格视为分隔符。在这种情况下,如果存在前导或尾随空格,则不会返回空字符串。此外,多个空格将被视为单个分隔符。

如果提供了 maxsplit,则最多完成 maxsplit 拆分(因此,列表最多具有 maxsplit+1 元素)。如果未指定 maxsplit 或 -1,则拆分次数没有限制,列表中将返回所有可能的拆分。

Python String split() 示例

让我们看一个简单的例子,其中字符串将根据指定的分隔符拆分为一个列表。

='Python is Nice'
# 简单字符串拆分示例str_list =分裂sep=' '打印str_list)

输出:

['Python','is','Nice']

带有 maxsplit 示例的字符串 split()

='Python is Nice'
str_list =分裂sep=' ' maxsplit=1打印str_list)

输出: ['Python', 'is Nice']

请注意,返回的列表只有 2 个项目,字符串仅拆分一次。

未提供 sep 或 None

='  Java  Python iOS    Android  '
str_list =分裂打印str_list)

输出: ['Java', 'Python', 'iOS', 'Android']

返回的列表中将忽略前导和尾随空格。此外,连续的空格也被视为单个分隔符。

多行字符串拆分示例

='Hi TherenHow are you?nI am fine'
multiline_str_split_list = multiline_str分裂sep='n'对于 multiline_str_split_list 中的 s打印

输出:

Hi There
你好吗? 我很好

多字符分隔符示例

='Hi||Hello||Adios'
str_list =split'||'打印str_list)

输出: ['Hi', 'Hello', 'Adios']

str.split() 函数示例

我们也可以直接从 str 类中使用 split() 函数。

print(str.split('ABACAD', sep='A'))
打印str.split'ABACAD' sep='A' maxsplit=2

输出:

['','B','C','D']
['' 'B' '加元']

请注意,当第一个字符与分隔符匹配时,将返回空字符串。

具有用户输入的 CSV 字符串拆分示例

最后,让我们看一个现实生活中的例子,用户将输入CSV数据,我们会将其拆分为字符串列表。

=input('Please enter CSV Datan')
input_csv_split_list = input_csv分裂sep=','print'输入数据长度 =' leninput_csv_split_list)print'输入列表 =' input_csv_split_list

输出:

Please enter CSV Data
Java,Android,Python,iOS,jQuery输入数据长度 = 5输入列表 = ['Java' 'Android' 'Python' 'iOS' 'jQuery']

这就是 python string split() 函数示例的全部内容。这是一个非常有用的函数,可以根据一些分隔符将字符串拆分为列表。

Python 字符串 rsplit()

Python 字符串 rsplit() 函数与 split() 函数非常相似。唯一的区别是拆分是从字符串的末端开始并一直到前面完成的。

让我们看一些 rsplit() 函数示例。

# rsplit() example
s = 'Python 太棒了'str_list =rsplitsep=' '打印str_list)str_list =rsplitsep=' ' maxsplit=1打印str_list)s = 'Java Python iOS Android 'str_list =rsplit打印str_list)multiline_str = '嗨,你好吗?n我很好'multiline_str_split_list = multiline_strrsplitsep='n'对于 multiline_str_split_list 中的 s打印s = '嗨||您好||阿迪奥斯str_list =rsplit'||'打印str_list)# 将 split() 与 str 类一起使用打印str.rsplit'ABACAD' sep='A'打印str.rsplit'ABACAD' sep='A' maxsplit=2# CSV 和用户输入示例input_csv = input'请输入CSV数据n'input_csv_split_list = input_csvrsplitsep=','print'输入数据长度 =' leninput_csv_split_list)print'输入列表 =' input_csv_split_list

输出:

['Python','is','Awesome']
['Python 是' '太棒了']['Java' 'Python' 'iOS' 'Android']嘿,你好 你好吗? 我很好['嗨', '你好' '阿迪奥斯']['' 'B' 'C' 'D']['AB' 'C' 'D']请输入CSV数据x,y,z输入数据长度 = 3输入列表 = ['x' 'y' 'z']

请注意,当提供 maxsplit 参数时,差异是可见的。否则,split() 和 rsplit() 函数输出是相同的。