str.find()
и str.index()
практически идентичны. самое большое различие заключается в том, что когда строка не найдена, str.index()
выдает ошибку, аналогичную той, которую вы получили, в то время как str.find()
возвращает -1, поскольку другие опубликовали сообщение.
есть 2 родственных метода, называемых str.rfind()
и str.rindex()
, которые начинают поиск с конца строки и направляются к началу.
Кроме того,
, как уже показали другие, оператор in
(а также not in
) также вполне допустим.
наконец, если вы пытаетесь искать шаблонов в строках, вы можете рассмотреть регулярные выражения, хотя я думаю, что слишком много людей используют их, когда они излишни. другими (известными) словами: « теперь у вас две проблемы .»
Это все, что я имею на данный момент. однако, если вы изучаете Python и / или изучаете программирование, одно очень полезное упражнение, которое я даю своим студентам, - это попытаться самостоятельно построить *find()
и *index()
в коде Python или даже in
и not in
(хотя как функции). вы получите хорошую практику обхода строк, и , у вас будет лучшее понимание того, как работают существующие методы строк.
удачи!