A string Python suporta fatiamento para criar substring. Observe que a string Python é imutável, o fatiamento cria uma nova substring a partir da string fonte e a string original permanece inalterada.
Fatiar string em Python
A sintaxe de fatiamento de string em Python é:
str_object[start_pos:end_pos:step]
O fatiamento começa com o índice start_pos (incluído) e termina no índice end_pos (excluído). O parâmetro de passo é usado para especificar os passos a serem dados do índice inicial ao final. O fatiamento de string em Python sempre segue esta regra: s[:i] + s[i:] == s para qualquer índice ‘i’. Todos esses parâmetros são opcionais – o valor padrão de start_pos é 0, o valor padrão de end_pos é o comprimento da string e o valor padrão de passo é 1. Vamos olhar alguns exemplos simples da função de fatiamento de string para criar substring.
s = 'HelloWorld'
print(s[:])
print(s[::])
Saída:
HelloWorld
HelloWorld
Observe que, uma vez que nenhum dos parâmetros de fatiamento foi fornecido, a substring é igual à string original. Vamos olhar mais alguns exemplos de fatiamento de uma string.
s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)
third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)
Saída:
Hello
llo
Observe que o valor do índice começa a partir de 0, então start_pos 2 refere-se ao terceiro caractere na string.
Reverter uma String usando Fatiamento
Podemos reverter uma string usando fatiamento ao fornecer o valor do passo como -1.
s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)
Saída: dlroWolleH
Vamos dar uma olhada em alguns outros exemplos de uso de passos e valores de índice negativos.
s1 = s[2:8:2]
print(s1)
Saída: loo
Aqui, a substring contém caracteres dos índices 2, 4 e 6.
s1 = s[8:1:-1]
print(s1)
Saída: lroWoll
Aqui, os valores do índice são considerados do fim para o início. A substring é feita dos índices 1 a 7 do fim para o início.
s1 = s[8:1:-2]
print(s1)
Saída: lool
O fatiamento em Python também funciona com índices negativos, nesse caso, a posição inicial é excluída e a posição final está incluída na substring.
s1 = s[-4:-2]
print(s1)
Saída: or
O fatiamento de strings em Python lida com índices fora do alcance de forma adequada.
>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'
Isso é tudo para a função de fatiamento de strings em Python para criar substrings.
Você pode conferir o script Python completo e mais exemplos em Python em nosso Repositório no GitHub.
Source:
https://www.digitalocean.com/community/tutorials/python-slice-string