在Pythonstring中分割最后的分隔符?

在string的最后一个分隔符处分割string的build议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意味着从末到尾。 如何才能做到这一点?

使用.rsplit()来代替:

 s.rsplit(',', 1) 

演示:

 >>> s = "a,b,c,d" >>> s.rsplit(',', 1) ['a,b,c', 'd'] >>> s.rsplit(',', 2) ['a,b', 'c', 'd'] 

这个方法开始从string的右侧分割; 通过给它一个最大限度的,你可以分裂只是最右边的事件。

我只是为了好玩而做了这个

  >>> s = 'a,b,c,d' >>> [item[::-1] for item in s[::-1].split(',', 1)][::-1] ['a,b,c', 'd']