Wie man in Python prüft, ob ein String eine Substring enthält
-
in
Operator zum Prüfen, ob ein String einen Substring enthält -
str.find()
Methode um zu prüfen, ob ein String einen Substring enthält -
str.index()
Methode - Substring-Prüflösung Schlussfolgerung
Es ist ziemlich oft, dass wir überprüfen müssen, ob der angegebene String einen bestimmten Teilstring enthält. Wir werden hier einige Methoden auflisten und dann die Laufzeitleistung vergleichen, um die effizienteste Methode auszuwählen.
Wir nehmen den String - It is a given string
als den gegebenen String und given
als den zu prüfenden Teilstring.
in
Operator zum Prüfen, ob ein String einen Substring enthält
in
Betreiber ist der Betreiber der Mitgliedschaftsprüfung. x in y
wird als True
gewertet, wenn x
ein Mitglied von y
ist, oder mit anderen Worten, y
enthält x
.
Es gibt True
zurück, wenn die Zeichenkette y
die Teilzeichenkette x
enthält.
>>> "given" in "It is a given string"
True
>>> "gaven" in "It is a given string"
False
in
Operator Leistung
import timeit
def in_method(given, sub):
return sub in given
print(min(timeit.repeat(lambda: in_method("It is a given string", "given"))))
0.2888628
str.find()
Methode um zu prüfen, ob ein String einen Substring enthält
find
ist eine eingebaute Methode von string
- str.find(sub)
.
Sie gibt den niedrigsten Index in str
zurück, wo der Substring sub
gefunden wird, andernfalls wird -1
zurückgegeben, wenn sub
nicht gefunden wird.
>>> givenStr = 'It is a given string'
>>> givenStr.find('given')
8
>>> givenStr.find('gaven')
-1
str.find()
Methode Leistung
import timeit
def find_method(given, sub):
return given.find(sub)
print(min(timeit.repeat(lambda: find_method("It is a given string", "given"))))
0.42845349999999993
str.index()
Methode
str.index(sub)
is a string
built-in method that returns the lowest index in str
where sub
is found. It will raise ValueError
when the substring sub
is not found.
>>> givenStr = 'It is a given string'
>>> givenStr.index('given')
8
>>> givenStr.index('gaven')
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
givenStr.index('gaven')
ValueError: substring not found
str.index()
Methode Leistung
import timeit
def find_method(given, sub):
return given.find(sub)
print(min(timeit.repeat(lambda: find_method("It is a given string", "given"))))
0.457951
Substring-Prüflösung Schlussfolgerung
- Der
in
-Operator ist derjenige, den Sie benutzen sollten, um zu prüfen, ob ein Teilstring in der angegebenen Zeichenkette existiert, weil er der schnellste ist str.find()
undstr.index()
könnten auch verwendet werden, aber wegen der schlechten Performance nicht das Optimum
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn FacebookVerwandter Artikel - Python String
- Entfernen Kommas aus String in Python
- Wie man prüft, ob eine Zeichenkette auf pythonische Weise leer ist
- Konvertieren einer Zeichenkette in einen Variablennamen in Python
- Wie man Leerzeichen in einem String in Python entfernt
- Wie man in Python Zahlen aus einer Zeichenkette extrahiert
- Wie man in Python String in datetime konvertiert