对于在字符串中最后一次出现分隔符时拆分字符串,推荐的Python习惯用法是什么?示例:
# instead of regular split >> s = "a,b,c,d" >> s.split(",") >> ['a', 'b', 'c', 'd'] # ..split only on last occurrence of ',' in string: >>> s.mysplit(s, -1) >>> ['a,b,c', 'd']
mysplit 接受第二个参数,即要拆分的分隔符的匹配项。与常规的列表索引一样, -1 表示从末尾开始的最后一个。如何做到这一点?
mysplit
-1
发布于 2013-02-22 05:06:55
请改用 .rsplit() 或 .rpartition() :
.rsplit()
.rpartition()
s.rsplit(',', 1) s.rpartition(',')
str.rsplit() 允许您指定拆分的次数,而 str.rpartition() 只拆分一次,但始终返回固定数量的元素(前缀、分隔符和后缀),并且对于单个拆分的情况更快。
str.rsplit()
str.rpartition()
演示:
>>> s = "a,b,c,d"