Ei, Estudante! Tudo bem?
Sua pesquisa acertou em cheio: os índices negativos realmente simplificam o acesso ao final da lista sem precisar calcular o comprimento dela toda vez. Isso evita erros e torna o código mais limpo e eficiente, especialmente em cenários reais de análise de dados, onde listas (ou arrays) podem ser enormes e dinâmicas.
Imagine que você está trabalhando com uma lista de dados de vendas diárias em uma empresa (algo comum em data science). Sem índices negativos, para pegar o último item (a venda mais recente), você precisaria fazer algo mais elaborado como lista[len(lista) - 1]
, o que pode ser pouco produtivo e pode dar erro se a lista mudar de tamanho. Com índices negativos, é só lista[-1]
. Sendo simples e direto!
Aqui temos uma lista de temperaturas medidas ao longo de uma semana:
temperaturas = [25.5, 26.0, 24.8, 27.2, 28.1, 26.5, 25.9]
Para pegar a última temperatura (sem calcular comprimento):
temperaturas[-1]
Retorno:
25.9
Penúltima:
temperaturas[-2]
Retorno:
26.5
Para pegar as últimas 3 temperaturas:
temperaturas[-3:]
Retorno:
[28.1, 26.5, 25.9]
Sem isso, você teria que fazer temperaturas[len(temperaturas)-3:]
, o que é mais propenso a erros, como falado anteriormente.
Em data science, pense em datasets grandes: se você está analisando uma série temporal (como preços de ações), acessar o final da lista rapidamente ajuda em tarefas como calcular médias móveis ou prever tendências recentes, sem recalcular tamanhos o tempo todo.
Aqui está o Notebook usado para fazer os testes acima: Notebook.
E recomendo a leitura da documentação sobre o tema Estruturas de dados.
Espero ter ajudado e qualquer dúvida, compartilhe no fórum.
Até mais e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado!