sa = [2, 4, 5, 8, 11]
res = lambda string, split_at: [string[i:j] for i, j in zip([0] + split_at,
    split_at + [None])]
print(res(st, sa))
python: разделение длинной строки в разных местах за один прогон