Junior
O que são fatias (slices) em Python e como são usadas?
sobes.tech IA
Resposta da IA
Slices em Python são uma forma conveniente de obter subsequências de coleções ordenadas, como strings, listas e tuplos. Permitem extrair elementos ou partes de uma sequência sem modificar a coleção original.
Sintaxe do slice: [start:stop:step]
start: índice de início do slice (incluído). Por padrão 0.stop: índice de fim do slice (não incluído). Por padrão o final da sequência.step: passo do slice (a cada quantos elementos pegar). Por padrão 1.
Os índices podem ser negativos. Um índice negativo conta a partir do final da sequência (-1 é o último elemento, -2 o penúltimo, etc.).
Exemplos de uso:
# String
s = "Hello, world!"
# Slice do início até o elemento 5 (não incluindo)
print(s[:5]) # Saída: Hello
# Slice do elemento 7 até o final
print(s[7:]) # Saída: world!
# Slice do elemento 7 até o 12 (não incluindo)
print(s[7:12]) # Saída: world
# Copiar a string
print(s[:]) # Saída: Hello, world!
# Inverter a string
print(s[::-1]) # Saída: !dlrow ,olleH
# Slice com passo 2
print(s[::2]) # Saída: Hlo ol!
# Lista
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# Slice do 2º ao 5º elemento (não incluindo)
print(my_list[1:5]) # Saída: [2, 3, 4, 5]
# Slice do último ao 3º elemento (não incluindo), com passo -1
print(my_list[-1:2:-1]) # Saída: [10, 9, 8, 7, 6, 5, 4]
# Tuplo
my_tuple = (10, 20, 30, 40, 50)
# Slice do 2º ao 4º elemento (não incluindo)
print(my_tuple[1:4]) # Saída: (20, 30, 40)
O uso de slices permite criar novos objetos com partes de dados da sequência original, tornando-os uma ferramenta eficiente para manipulação de dados.