"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Python - Indexação e Fatiamento

Python - Indexação e Fatiamento

Publicado em 01/08/2024
Navegar:925

Python - Indexing and Slicing

Indexação e fatiamento é um conceito importante em Python, especialmente quando usamos strings.

Indexação:

WKT, string nada mais é do que uma sequência de caracteres.
Portanto, cada caractere tem uma posição chamada index e acessar sua posição nessa string específica é conhecido como indexação.

Em Python, temos indexação baseada em zero, ou seja, o primeiro caractere de uma string tem um índice (posição) de 0 em vez de ter um, então o segundo caractere tem um índice (posição) de 1 e assim por diante.

Por exemplo,

>     H E L L O W O R L D
>     0 1 2 3 4 5 6 7 8 9

Isso é conhecido como indexação positiva, pois usamos apenas números positivos para referir os índices.

Você pode perguntar: "Então, também temos índices negativos??"
Ofc, mas aqui não temos zero como primeira posição, pois não é um número negativo.

Indexação negativa nos permite acessar caracteres do final da string, ou seja, o último caractere tem um índice de -1, o penúltimo caractere tem um índice de -2 e assim por diante.

>      H  E  L  L  O  W  O  R  L  D
>    -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
word = "HELLOWORLD"

print(word[0])
print(word[5])

H
W

De forma similar,

print(word[-1])
print(word[-6])

D
0

Isso é tudo sobre indexação.


Fatiamento :

Pense em fatiar um barbante como cortar uma fatia de bolo de um bolo inteiro. Podemos especificar onde começar o corte (índice), onde terminar (índice final) e até mesmo o tamanho que cada fatia deve ter (etapa). Dessa forma, podemos criar porções menores do bolo (ou barbante) exatamente como gostamos!

Em Python, fatiar uma string nos permite capturar partes específicas dela, especificando onde começar e onde terminar dentro da string.
Assim, por exemplo, se a mensagem contiver "HELLOWORLD", então message[3:7] fornecerá "LOWO" porque começa no índice 3 ('L') e termina logo antes do índice 7 ('D'). Dessa forma, podemos extrair qualquer parte de uma string que precisarmos!

- A sintaxe básica para fatiar é,

string[start:stop]
  • O índice inicial é onde a fatia começa e esse índice é inclusivo.
  • O índice de parada é onde a fatia termina, mas esse índice é exclusivo, o que significa que o caractere nesse índice não está incluído na fatia.
text = "HappyBirthday"

print(text[0:5])  
print(text[5:13])

Happy
Birthday  

Ao fatiar uma string em Python, podemos simplesmente omitir o índice inicial ou final para fatiar do início ou do final da string.
É tão simples quanto isso!

- Fatiar com um passo,

Para especificar o intervalo entre caracteres ao fatiar uma string em Python, basta adicionar dois pontos seguidos do valor da etapa:

string[start:stop:step]

Isso permite controlar como queremos pular os caracteres da string ao criar uma fatia.

message = "HELLOWORLD"
print(message[1::2])    

EORL

message[1::2] começa a fatiar do índice 1 ('E') até o final da string, com um passo de 2.
Portanto, inclui caracteres nos índices 1, 3, 5 e 7, dando-nos "EORL".

Até vimos sobre fatiamento positivo e agora vamos aprender sobre fatiamento negativo.

- Fatiamento negativo:

  • Uma etapa negativa permite dividir a string na ordem inversa.
  • Vamos cortar do penúltimo caractere para o terceiro caractere na ordem inversa
message = "HELLOWORLD"
print(message[-2:2:-1])

ROWOL

Vamos analisar algumas questões.

#Escreva uma função que pega uma string e retorna uma nova string consistindo em seu primeiro e último caractere.

word = "Python"
end = word[0] word[5]
print(end)

Pn

#Escreva uma função que reverta uma determinada string.

word = "Python"
print(word[::-1])

nohtyP

#Dada uma string, extraia e retorne uma substring do 3º ao 8º caractere (inclusive).

text = "MichaelJackson"
print(text[3:9])

haelJa

#Dado um endereço de e-mail, extraia e retorne o domínio.

email = "[email protected]"
domain = email[:-10]
print(domain)

hello_world

#Escreva uma função que retorne cada terceiro caractere de uma determinada string.

text = "Programming"
print(text[::3])

Pgmn

#Escreva uma função que pula cada segundo caractere e depois inverte a string resultante.

text1 = "Programming"
print(text1[::-2])

gimroP

#Escreva uma função que extraia e retorne caracteres em índices pares de uma determinada string.

text = "Programming"
print(text[::2])

Pormig

Tudo bem, isso é o básico aqui.

.....

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/abys_learning_2024/python-indexing-and-slicing-2moh?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3