Próbuję wykonać następujące czynności, w sposób jasny pythonic sposób:Usuń prefiks z ciągiem
def remove_prefix(str, prefix):
return str.lstrip(prefix)
print remove_prefix('template.extensions', 'template.')
Daje:
xtensions
co nie jest to, czego się spodziewałem (extensions
) . Oczywiście (głupio), ponieważ błędnie użyłem lstrip: lstrip usunie wszystkie znaki, które pojawiają się w podanym ciągu chars
, nie biorąc pod uwagę tego ciągu jako prawdziwego ciągu, ale jako "zestaw znaków do usunięcia od początku ciągu znaków ".
Czy istnieje standardowy sposób usunięcia podciągu od początku łańcucha?
** To powinno być standardem 'metoda str' ** konieczności ręcznego przedefiniować tę funkcję użytkową w projekcie _wszystkie_ Pythona obłudny. Nie jest to wystarczająco tępy, aby zapewnić hermetyzację w pełnej wersji biblioteki innej firmy. Jest jednak dość denerwujące, aby wszędzie na nowo określić definicję. Niezrozumiałe skargi na bok, dziękuję za ten soczysty kawałek radości Python! –