Artigo original: How to Substring a String in Python
O Python oferece muitas maneiras de dividir uma string em substrings. Esse processo normalmente é chamado de 'slicing'.
Ele segue este modelo:
string[início: fim: passo]
Onde,
início
: O índice inicial da substring. O caractere deste índice é incluído na substring. Se início não for incluído, assume-se que o índice é 0.
fim
: O índice final da substring. O caractere deste índice NÃO é incluído na substring. Se fim não for incluído, ou se o valor especificado exceder o tamanho da string, assume-se que ele é igual ao tamanho da string por padrão.
passo
: Cada caractere de ‘passo’ após o caractere atual ser incluído. O valor padrão é 1. Se passo for omitido, assume-se que ele é igual a 1.
Modelo
string[início:fim]
: Obtém todos os caracteres do índice inicial ao índice anterior ao final
string[:fim]
: Obtém todos os caracteres do começo da string ao índice anterior ao final
string[início:]
: Obtém todos os caracteres do índice inicial ao final da string
string[início:fim:passo]
: Obtém todos os caracteres do índice inicial ao índice anterior ao final pulando o número de caracteres em passo
Exemplos
- Obter os 5 primeiros caracteres de uma string
string = "freeCodeCamp"
print(string[0:5])
Resultado:
> freeC
Observação: print(string[:5])
retorna o mesmo resultado que print(string[0:5])
- Obter uma substring de tamanho 4 a partir do 3º caractere da string
string = "freeCodeCamp"
print(string[2:6])
Resultado:
> eeCo
Observe que o índice inicial ou o final pode ser um número negativo. Um índice negativo indica que você começa a contar do final da string em vez de a partir do começo (ou seja, da direita para a esquerda). O índice -1 representa o último caractere da string, -2 representa o penúltimo e assim por diante.
- Obter o último caractere da string
string = "freeCodeCamp"
print(string[-1])
Resultado:
> p
- Obter os 5 últimos caracteres de uma string
string = "freeCodeCamp"
print(string[-5:])
Resultado:
> eCamp
- Obter uma substring que contém todos os caracteres exceto os 4 últimos caracteres e o 1º
string = "freeCodeCamp"
print(string[1:-4])
Resultado:
> reeCode
Mais exemplos
str = “freeCodeCamp”
print str[-5:-2] # prints ‘eCa’
print str[-1:-2] # prints ‘’ (empty string)
- Obter os caracteres de uma string saltando um por vez
string = "freeCodeCamp"
print(string[::2])
Resultado:
> feCdCm