str.index() Localizar substring (erro se não encontrar)

Última atualização: 2026-09-22

str.index() Localizar substring (erro se não encontrar)

str.index(sub) é semelhante a find(), mas lança ValueError se não encontrar.

CategoriaMétodos de string
TipoMétodo de tipo interno
Versão do Pythonall

📝 Sintaxe

str.index(sub[, start[, end]])

⚙️ Parâmetros

sub ObrigatórioThe substring to search for.
start OpcionalStart index of the range (inclusive); None means the beginning.(Padrão:None)
end OpcionalEnd index of the range (exclusive); None means the end.(Padrão:None)

Retorno:int. The lowest index where sub is found; raises ValueError if absent.

Modifica o original:Não (retorna um novo objeto)

💥 Exceções

▶ Exemplo

Edite o código, clique em Executar e veja o resultado no painel de saída:

Saída:

2
not found: substring not found
Mais estudos de caso em breve — aguarde.

❓ Perguntas frequentes

QQual é a diferença entre index() e find()?
AO comportamento é quase idêntico, com uma diferença: quando não encontra, find() retorna -1 enquanto index() lança ValueError: substring not found.
QQuando devo usar index()?
AUse index() quando a subsequência "deve existir" e não encontrá-la é um erro de lógica, para que a exceção exponha imediatamente o problema; caso contrário, find() é mais seguro.
QComo evito que index() lance uma exceção?
AVerifique antes com in: if 'll' in s: print(s.index('ll')); ou capture ValueError com try/except.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%