拆分字符串并获取Python中的最后一个元素
使用 str.rsplit() 方法并将 maxsplit 设置为 1 来拆分字符串并获取最后一个元素。 rsplit() 方法从右边开始拆分,当 maxsplit 设置为 1 时,只会执行一次拆分。
my_str = 'one,two,three,four'
last = my_str.rsplit(',', 1)[-1]
print(last) # ?️ 'four'
我们使用 rsplit() 方法从右边拆分字符串。
str.rsplit 方法使用提供的分隔符作为分隔符字符串返回字符串中的单词列表。
my_str = 'one two three'
print(my_str.rsplit(' ')) # ?️ ['one', 'two', 'three']
print(my_str.rsplit(' ', 1)) # ?️ ['one two', 'three']
该方法采用以下 2 个参数:
- separator 在每次出现分隔符时将字符串拆分为子字符串
- maxsplit 最多做maxsplit的分裂,最右边的(可选)
除了从右侧拆分外,rsplit() 的行为类似于 split()。
当 maxsplit 参数设置为 1 时,最多进行 1 次拆分。
最后一步是通过访问索引 -1 处的列表项来访问列表中的最后一个元素。
my_str = 'one,two,three,four'
last = my_str.rsplit(',', 1)[-1]
print(last) # ?️ 'four'
我们也可以以类似的方式使用 str.split() 方法。
my_str = 'one-two-three-four'
last = my_str.split('-')[-1]
print(last) # ?️ 'four'
如果我们的字符串以特定分隔符结尾,我们可能会得到令人困惑的结果。
my_str = 'one-two-three-four-'
last = my_str.rsplit('-', 1)[-1]
# ?️ ['one-two-three-four', '']
print(my_str.rsplit('-', 1))
print(last) # ?️ ""
我们可以使用 str.strip() 方法删除前导或尾随分隔符。
my_str = 'one-two-three-four-'
last = my_str.strip('-').rsplit('-', 1)[-1]
print(last) # ?️ "four"
在调用 rsplit() 方法之前,我们使用 str.strip() 方法从字符串中删除任何前导或尾随连字符。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。