Próbuję znaleźć przykłady, ale bez powodzenia. Czy ktoś wie o niektórych przykładach w sieci? Chciałbym wiedzieć, co powraca, gdy nie może znaleźć, i jak określić od początku do końca, które, jak sądzę, będzie wynosić 0, -1.Przykłady znalezienia ciągu znaków w języku Python
Odpowiedz
można użyć str.index
też:
>>> 'sdfasdf'.index('cc')
Traceback (most recent call last):
File "<pyshell#144>", line 1, in <module>
'sdfasdf'.index('cc')
ValueError: substring not found
>>> 'sdfasdf'.index('df')
1
Dlaczego wybrałbyś jedno nad drugim? – endolith
to podnosi błąd zamiast zwracać kod, który jest bardziej pythonic, w mojej opinii. – SilentGhost
wyjątki nie powinny być używane do kontroli przepływu. więc używaj indeksu() tylko wtedy, gdy żadne dopasowanie nie będzie nieprawidłowe. – aehlke
Nie jestem pewien, czego szukasz, masz na myśli find()
?
>>> x = "Hello World"
>>> x.find('World')
6
>>> x.find('Aloha');
-1
Dzięki, co otrzymasz, jeśli nie możesz tego znaleźć? –
-1 mówi moja powłoka pytona – SilentGhost
Otrzymasz -1, zaktualizowany linkiem do dokumentów i przykładu. –
find( sub[, start[, end]])
Powrót najniższy wskaźnik w ciągu gdzie podciąg sub znajduje się, tak że sub jest zawarta w przedziale [początek, koniec ]. Opcjonalne argumenty start i end są interpretowane tak jak w notacji plasterka. Zwraca -1, jeśli pod nie znaleziono.
Od the docs.
Szczerze mówiąc, jest to rodzaj sytuacji, w której po prostu otworzyć Pythona w wierszu poleceń i zacząć bawić: interpreter
>>> x = "Dana Larose is playing with find()"
>>> x.find("Dana")
0
>>> x.find("ana")
1
>>> x.find("La")
5
>>> x.find("La", 6)
-1
Pythona czyni tego rodzaju eksperymentów łatwe. (To samo dotyczy innych języków z podobnym tłumacza)
IPython sprawia, że tego typu rzeczy są jeszcze lepsze. – endolith
Od here:
str.find (sub [, start [, end]])
Powrót najniższy wskaźnik w ciągu gdzie znajduje podciąg sub , tak że sub jest zawarty w zakresie [początek, koniec]. Opcjonalne argumenty start i end są interpretowane tak jak w notacji plasterka. Zwracają -1 jeśli sub nie znaleziono „
Tak, kilka przykładów:.
>>> str = "abcdefioshgoihgs sijsiojs "
>>> str.find('a')
0
>>> str.find('g')
10
>>> str.find('s',11)
15
>>> str.find('s',15)
15
>>> str.find('s',16)
17
>>> str.find('s',11,14)
-1
Generalnie nie jest dobrym pomysłem użycie słów takich jak 'str' jako nazw zmiennych. –
Jeśli chcesz szukać w ostatniej instancji ciągu w tekście, można uruchomić rfind
.przykład:
s="Hello"
print s.rfind('l')
Wydajność: 3
* brak importu potrzebne
pełną składnię:
stringEx.rfind(substr, beg=0, end=len(stringEx))
Spróbuj tego:
with open(file_dmp_path, 'rb') as file:
fsize = bsize = os.path.getsize(file_dmp_path)
word_len = len(SEARCH_WORD)
while True:
p = file.read(bsize).find(SEARCH_WORD)
if p > -1:
pos_dec = file.tell() - (bsize - p)
file.seek(pos_dec + word_len)
bsize = fsize - file.tell()
if file.tell() < fsize:
seek = file.tell() - word_len + 1
file.seek(seek)
else:
break
jeśli x jest ciągiem i szukać Y, który również ciągiem ich jest dwóch przypadkach: Przypadek 1: y istnieje w x, więc x.find (y) = indeks (pozycja) y wx. sprawa 2: y nie istnieje, więc x.find (y) = -1 oznacza, że y nie występuje wx.
- 1. Dzielenie ostatniego separatora w ciągu znaków w języku Python?
- 2. Porównywanie ciągu znaków z wieloma elementami w języku Python
- 3. Zmiana ciągu znaków na bajt w języku Python 2.7
- 4. Generowanie losowego ciągu znaków UTF-8 w języku Python
- 5. Dzielenie ciągu znaków z wieloma ogranicznikami w języku Python
- 6. Najszybszy sposób znalezienia ciągu znaków w tablicy ciągów
- 7. Sortowanie pojedynczego ciągu znaków w języku Java
- 8. Selektywne dzielenie ciągu znaków w języku Perl
- 9. format ciągu znaków w języku C#
- 10. Python - oblicz wyrażenie matematyczne w ciągu znaków
- 11. Czy w języku Python możliwe jest unikanie znaków nowej linii podczas drukowania ciągu znaków?
- 12. Zmutowane łańcuchy znaków w języku Python
- 13. Probabalistyczne dopasowywanie ciągów znaków w języku Python
- 14. Zaawansowane wyszukiwanie ciągu python
- 15. Python: konkatenowanie bajtów za pomocą ciągu znaków
- 16. Python/Usuń znak specjalny z ciągu znaków
- 17. Podłoża ciągu znaków przy użyciu języka Python
- 18. python wszystkie kombinacje podzbiorów ciągu znaków
- 19. Jak usunąć dowolny adres URL w ciągu znaków w języku Python
- 20. W języku Python, jaki jest najlepszy sposób wykonywania lokalnego polecenia systemu Linux przechowywanego w ciągu znaków?
- 21. Python zwracający niepoprawną długość ciągu znaków przy użyciu znaków specjalnych
- 22. Funkcja języka Python do ograniczania ciągu znaków do maksymalnej długości
- 23. Podstawowe pytanie w języku Java: Równość ciągu znaków
- 24. Oblicz szerokość wyświetlania ciągu znaków w języku Java
- 25. Windows8 - Używanie zlokalizowanego ciągu znaków w języku C#
- 26. Utwórz ścieżkę z ciągu znaków w języku Java7
- 27. Uruchom kod z ciągu znaków w języku Java
- 28. Jak zamienić pierwsze wystąpienie ciągu znaków w języku Java?
- 29. najszybszy sposób na znalezienie ciągu znaków w języku C#?
- 30. Parsowanie ciągu znaków w języku C#; czy istnieje czystszy sposób?
Pytasz o http://docs.python.org/library/stdtypes.html#id4?Pytasz konkretnie o metodę wyszukiwania? http://docs.python.org/library/stdtypes.html#str.find –
Dzięki tak po prostu metoda wyszukiwania. Znalazłem tę stronę, ale bez przykładów. –
Na stronie jest napisane -1. Co jeszcze musiałeś wiedzieć? –