Поиск начала строки с одного из префиксов переменной длины списка

Мне нужно выяснить, начинается ли имя с любого из префиксов списка, а затем удалить его, например:

if name[:2] in ["i_", "c_", "m_", "l_", "d_", "t_", "e_", "b_"]:
    name = name[2:]

Вышеуказанное работает только для префиксов списков длиной два. Мне нужна такая же функциональность дляпрефиксы переменной длины.

Как это сделать эффективно (мало кода и хорошая производительность)?

Цикл for для каждого префикса с последующей проверкойname.startswith(prefix) наконец-то нарезать имя в соответствии с длиной префикса работает, но это много кода, возможно, неэффективного и «непифонического».

У кого-нибудь есть хорошее решение?

Ответы на вопрос(11)

Ваш ответ на вопрос