多個分隔符我有蟒蛇以下字符串:分割字符串在python
foo = 'a_b_c'
我如何分割字符串分爲兩個部分:'a_b'
和'c'
?即,我想在第二'_'
str.split('_')
分裂分裂成3個部分:'a'
,'b'
和'c'
。
多個分隔符我有蟒蛇以下字符串:分割字符串在python
foo = 'a_b_c'
我如何分割字符串分爲兩個部分:'a_b'
和'c'
?即,我想在第二'_'
str.split('_')
分裂分裂成3個部分:'a'
,'b'
和'c'
。
使用str.rsplit()
method有限制:從右手側
part1, part2 = foo.rsplit('_', 1)
str.rsplit()
分裂,並限制(第二個參數),它告訴,只分裂一次。
或者,使用str.rpartition()
:
part1, delimiter, part2 = foo.rpartition('_')
這包括定界符作爲返回值。
演示:
>>> foo = 'a_b_c'
>>> foo.rsplit('_', 1)
['a_b', 'c']
>>> foo.rpartition('_')
('a_b', '_', 'c')
我打算低估這一點,因爲它是以前回復的副本。 –
@AlexReynold很好,這是一個糟糕的原因downvote。而這個答案不是評論的副本。 – vaultah
@AlexReynolds:評論是*不*回覆,我也不能幫助某人選擇使用評論。我沒有在評論中回答這個問題。此外,我的答案還包括另一個備選* *在評論中沒有提到*。我希望投票發生在回答的幫助上。 –
import re
x = "a_b_c"
print re.split(r"_(?!.*_)",x)
您可以re
與使用lookahead
我們通過_
指出,拆分後不應該有_
做到這一點通過re
。在這裏。
不' 'a_b_c'.rsplit(' _」,1)'爲你工作? – vaultah