de-vraag
  • Pytania
  • Tagi
  • Użytkownicy
Powiadomienia
Nagrody
Rejestracja
Po zarejestrowaniu się, będziesz otrzymywać powiadomienia o odpowiedziach i komentarzach do swoich pytań.
Zaloguj się
Brak tłumaczeń pasujących do Twojego wyszukiwania Jeśli masz już konto, zaloguj się, aby sprawdzić nowe powiadomienia.
Za dodane pytania, odpowiedzi i komentarze przewidziane są nagrody.
Więcej
Źródło
Edytuj
 user244470
user244470
Question

Jak uzyskać pozycję znaku w Pythonie?

Jak mogę uzyskać pozycję znaku wewnątrz łańcucha w pythonie?

483 2010-02-19T06:32:57+00:00 3
 Lucio
Lucio
Edytowane pytanie 3. czerwca 2013 в 8:55
Programowanie
python
string
To pytanie ma 1 odpowiedź w języku angielskim, aby je przeczytać zaloguj się na swoje konto.
Eli Bendersky
Eli Bendersky
19. lutego 2010 в 6:35
2010-02-19T06:35:27+00:00
Więcej
Źródło
Edytuj
#10085358

Istnieją dwie metody łańcuchowe do tego celu, find() i index(). Różnica między nimi polega na tym, co dzieje się, gdy szukany ciąg znaków nie zostanie znaleziony. Metoda find() zwraca -1, a index() podnosi ValueError.

Użycie find()

>>> myString = 'Position of a character'
>>> myString.find('s')
2
>>> myString.find('x')
-1

Użycie index()

>>> myString = 'Position of a character'
>>> myString.index('s')
2
>>> myString.index('x')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found

Z podręcznika Pythona

string.find(s, sub[, start[, koniec]]). Zwraca najniższy indeks w s, gdzie znaleziono podłańcuch sub taki, że sub jest w całości zawarty w s[start:end]. Zwraca -1 przy niepowodzeniu. Wartości domyślne dla start i end oraz interpretacja wartości ujemnych jest taka sama jak dla slices.

I:

string.index(s, sub[, start[, end]]). Podobnie jak find() ale podnosi ValueError gdy podłańcuch nie zostanie znaleziony.

L S
L S
Edytowana odpowiedź 21. grudnia 2017 в 12:16
634
0
 ghostdog74
ghostdog74
19. lutego 2010 в 6:36
2010-02-19T06:36:47+00:00
Więcej
Źródło
Edytuj
#10085359
>>> s="mystring"
>>> s.index("r")
4
>>> s.find("r")
4

"Długa droga".

>>> for i,c in enumerate(s):
...   if "r"==c: print i
...
4

aby uzyskać podciąg,

>>> s="mystring"
>>> s[4:10]
'ring'
 ghostdog74
ghostdog74
Edytowana odpowiedź 19. lutego 2010 в 7:30
47
0
John Machin
John Machin
19. lutego 2010 в 6:37
2010-02-19T06:37:36+00:00
Więcej
Źródło
Edytuj
#10085360
string.find(character)  
string.index(character)  

Być może chciałbyś zajrzeć do dokumentacji, aby dowiedzieć się, jaka jest różnica między nimi.

Brad Koch
Brad Koch
Edytowana odpowiedź 11. kwietnia 2014 в 1:52
10
0
Dodaj pytanie
Kategorie
Wszystkie
Technologia
Kultura / Rekreacja
Życie / Sztuka
Nauka
Profesjonalny
Biznes
Użytkownicy
Wszystkie
Nowy
Popularny
1
Jasur Fozilov
Zarejestrowany 8 godzin temu
2
Zuxriddin Muydinov
Zarejestrowany 23 godziny temu
3
Денис Анненский
Zarejestrowany 3 dni temu
4
365
Zarejestrowany 1 tydzień temu
5
True Image
Zarejestrowany 1 tydzień temu
BG
DA
DE
EL
ES
FI
FR
ID
IT
JA
KO
LV
NL
PL
PT
RU
TR
ZH
© de-vraag 2022
Źródło
stackoverflow.com
na podstawie licencji cc by-sa 3.0 z przypisaniem