Поиск начала строки с одного из префиксов переменной длины списка
Мне нужно выяснить, начинается ли имя с любого из префиксов списка, а затем удалить его, например:
if name[:2] in ["i_", "c_", "m_", "l_", "d_", "t_", "e_", "b_"]:
name = name[2:]
Вышеуказанное работает только для префиксов списков длиной два. Мне нужна такая же функциональность дляпрефиксы переменной длины.
Как это сделать эффективно (мало кода и хорошая производительность)?
Цикл for для каждого префикса с последующей проверкойname.startswith(prefix)
наконец-то нарезать имя в соответствии с длиной префикса работает, но это много кода, возможно, неэффективного и «непифонического».
У кого-нибудь есть хорошее решение?