我想通過索引列表拆分字符串,其中拆分段以一個索引開始,並在下一個索引之前結束。通過索引列表拆分字符串
例子:
s = 'long string that I want to split up'
indices = [0,5,12,17]
parts = [s[index:] for index in indices]
for part in parts:
print part
這將返回:
長字符串,我想分手了
字符串,我想分手了
,我想拆分
我想分手
我試圖讓:
長
串
是
我想分手
另一種方式是,'[s [i:j] for i,j in izip_longest(indices,indices [1:])]''但我更喜歡你的方式! – jamylak
這將索引列表複製到索引[1:]中,並通過'zip'函數創建一個具有雙倍大小的新列表 - >性能和內存消耗不佳。 – schlamar
@ ms4py這很好,在這種情況下性能不是問題,這是一個非常可讀的解決方案。如果表現是一個問題,我的建議可以使用。 – jamylak