- Definição de Listas
Uma lista é uma coleção ordenada de elementos que pode abranger diversos tipos de dados, como números, strings, objetos e até mesmo outras listas. As listas em Python são caracterizadas por:
- Ordenação: Os elementos mantêm uma sequência específica, permitindo o acesso por meio de índices.
- Mutabilidade: O conteúdo da lista pode ser alterado dinamicamente, através de operações de adição, remoção ou modificação de elementos.
- Dinamismo: O tamanho da lista não é fixo e pode crescer ou diminuir conforme a necessidade.
É importante notar que listas podem conter múltiplos dados, de tipos variados, e podem ser aninhdaas umas dentro das outras.
Exemplo de criação e acesso a listas:
# Criando listas com diferentes conteúdos
lista_musicas = ["O Mar Não Sabe De Nada", "A Viagem", "Trem das Onze"]
print(f"Lista de músicas: {lista_musicas}")
print(f"Tipo da lista: {type(lista_musicas)}")
lista_diversos = ["Python", 3.10, True, None]
print(f"Lista com tipos variados: {lista_diversos}")
print(f"Tipo da lista: {type(lista_diversos)}")
lista_aninhada = [["Aquarela", "Construção"], ["O Bêbado e a Equilibrista", "Asa Branca"]]
print(f"Lista aninhada: {lista_aninhada}")
# Acessando elementos por índice (começando em 0)
print(f"Acessando o terceiro elemento: {lista_musicas[2]}")
# Acessando elementos por índice reverso (começando em -1)
print(f"Acessando o último elemento: {lista_musicas[-1]}")
# Acessando elementos em listas aninhadas
print(f"Acessando o primeiro item da primeira sublista: {lista_aninhada[0][0]}")
print(f"Acessando o primeiro item da segunda sublista: {lista_aninhada[1][0]}")
# Nota: Tentar acessar um índice inexistente resultará em um erro 'IndexError'.
- Operações Comuns em Listas
Listas oferecem um conjunto robusto de operações para gerenciamento de dados:
- Obter o índice de um elemento específico.
- Modificar o valor em um índice determinado.
- Inserir um novo elemento em uma posição específica.
- Adicionar um único elemento ao final da lista.
- Anexar todos os elementos de outra lista ao final da lista atual.
- Remover um elemento com base em seu índice.
- Remover a primeira ocorrência de um elemento específico.
- Contar o número total de elementos na lista.
- Contar quantas vezes um elemento específico aparece na lista.
- Remover todos os elementos da lista.
Exemplo prático das operações:
dados_poeticos = ["Caminhos que se bifurcam", "O peso do silêncio", "Ecos na imensidão", "O voo da andorinha", "Raízes no concreto", "Marés da alma"]
# 1. Encontrar o índice de um elemento
try:
indice_elemento = dados_poeticos.index("Raízes no concreto")
print(f"O índice de 'Raízes no concreto' é: {indice_elemento}\n")
except ValueError:
print("'Raízes no concreto' não encontrado na lista.\n")
# 2. Modificar um elemento pelo índice
dados_poeticos[2] = "Sussurros do vento"
print(f"Lista após modificação: {dados_poeticos}\n")
# 3. Inserir um elemento em uma posição
dados_poeticos.insert(1, "A névoa da manhã")
print(f"Lista após inserção: {dados_poeticos}\n")
# 4. Adicionar um elemento ao final
dados_poeticos.append("Sob o céu estrelado")
print(f"Lista após adicionar ao final: {dados_poeticos}\n")
# 5. Estender a lista com outra lista
novos_versos = ["A luz que se esvai", "Um novo amanhecer"]
dados_poeticos.extend(novos_versos)
print(f"Lista após extensão: {dados_poeticos}\n")
# 6. Remover um elemento pelo índice (usando del e pop)
# Usando del
del dados_poeticos[2]
print(f"Lista após remover pelo índice (del): {dados_poeticos}\n")
# Usando pop (remove e retorna o elemento)
elemento_removido = dados_poeticos.pop(-4)
print(f"Elemento removido com pop: '{elemento_removido}', Lista atual: {dados_poeticos}\n")
# 7. Remover a primeira ocorrência de um elemento
try:
dados_poeticos.remove("Raízes no concreto")
print(f"Lista após remover 'Raízes no concreto': {dados_poeticos}\n")
except ValueError:
print("'Raízes no concreto' não encontrado para remoção.\n")
# 8. Contar o número total de elementos
total_elementos = len(dados_poeticos)
print(f"Número total de elementos na lista: {total_elementos}\n")
# 9. Contar ocorrências de um elemento
contagem_especifica = dados_poeticos.count("Sob o céu estrelado")
print(f"O elemento 'Sob o céu estrelado' aparece {contagem_especifica} vez(es).\n")
# 10. Limpar a lista
dados_poeticos.clear()
total_elementos_apos_limpeza = len(dados_poeticos)
print(f"Lista após ser limpa: {dados_poeticos}")
print(f"Número de elementos após limpeza: {total_elementos_apos_limpeza}\n")