2010-07-11 4 views

Répondre

118

find()

>>> s = "the dude is a cool dude" 
>>> s.find('dude') 
4 
+15

C'est pourquoi j'aime python –

+7

Il retourne '-1' si elle est introuvable –

3

Description rapide: index et find

Suivant la méthode find il y a aussi bien index. find et index deux donnent le même résultat: le retour de la position de la première occurrence, mais si rien ne se trouve index soulèvera un ValueError alors que find retours -1. Speedwise, les deux ont les mêmes résultats de référence.

s.find(t) #returns: -1, or index where t starts in s 
s.index(t) #returns: Same as find, but raises ValueError if t is not in s 

connaissances supplémentaires: rfind et rindex:

En général, trouver et indice de rendement le plus petit indice où la chaîne transmise commence, et rfind et rindex revenir le plus grand indice où il commence La plupart des algorithmes de recherche de chaînes recherchent de gauche à droite, donc les fonctions commençant par r indiquent que la recherche se fait à partir de de droite à gauche

Ainsi, dans le cas où la probabilité de l'élément que vous recherchez est proche de la fin que le début de la liste, rfind ou rindex serait plus rapide.

s.rfind(t) #returns: Same as find, but searched right to left 
s.rindex(t) #returns: Same as index, but searches right to left 

Source: Python: Visual QuickStart Guide, Toby Donaldson

Questions connexes