2015-12-02 39 views
6

Czy istnieje dobry (er) sposób na znalezienie indeksu końcowego słowa w ciągu znaków?Znajdź indeks końca słowa w pythonie

Moja metoda jest tak:

text = "fed up of seeing perfect fashion photographs" 
word = "fashion" 
wordEndIndex = text.index(word) + len(word) - 1 
+0

To właśnie zrobię. –

+2

Co dla mnie wygląda dobrze. W zależności od tego, do czego używasz tych informacji, mogą istnieć lepsze sposoby osiągnięcia celu końcowego. Być może zamieścisz więcej szczegółów na temat tego, co naprawdę chcesz zrobić? – kindall

+0

're.search (słowo, tekst) .end()' ale nie może być szybszy niż twoja metoda. – Jkdc

Odpowiedz

0

nie mogę wypowiedzieć się na temat tego, czy jest to lepszy sposób, ale alternatywa do tego, co sugerowali byłoby znalezienie następnego miejsca po tym słowie i używać, aby zdobądź indeks.

text = "fed up of seeing perfect fashion photographs" 
word = "fashion" 
temp = text.index(word) 
wordEndIndex = temp + text[temp:].index(' ') - 1 

Twoje podejście wydaje się bardziej naturalne i prawdopodobnie również jest szybsze.