Listas

É uma sequência de valores organizados entre colchetes [ ].

Esses dados podem ser de diferentes tipos: inteiros, floats, strings e inclusive outras listas. Exemplos:

dezenas = [10, 20, 30, 40]

comunidades = ['PyLadies Sul de Minas', 'PyLadies Paraíba', 'PyLadies Sorocaba',  ' PyLadies São Carlos',  ' PyLadies Mato Grosso']

lista_vazia = []

Os elementos de uma lista podem ser acessados pelo índice:

cores = ['amarelo', 'azul', 'branco', 'dourado']

Lembrando que a primeira posição de uma lista em Python é a posição 0:

cores[0]
>>> 'amarelo'

cores[2]
>>> 'branco'

Além de ser possível acessar cada elemento da lista pelo índice, é possível, inserir, alterar e deletar.

Listas são mutáveis, ou seja, é possível alterar seus elementos: adicionando, removendo e/ou substituindo-os com os métodos abaixo:

Operador Explicação Exemplo Saída
Concatenação (+) Cria uma nova lista com a concatenação das listas passadas natal = ["Débora", "Clara"]

sao_carlos = ["Marília", "Belém"]

ladies = natal + sao_carlos
['Débora', 'Clara', 'Marília', 'Belém']
Repetição (*) Cria uma nova lista com n concatenações da lista passada pyladies = ["PyBar", "Papo", "GTs"]

vida = pyladies * 3
['PyBar', 'Papo', 'GTs', 'PyBar', 'Papo', 'GTs', 'PyBar', 'Papo','GTs']
Indexação ([]) Retorna um elemento de uma lista. O primeiro índice é o zero. capitulos = ['Recife', 'São Carlos', 'Salvador', 'Macaé']

capitulos = [1]
São Carlos
elemento in lista Verifica se um elemento está presente em uma lista. letras = ['P', 'Y', 'L', 'A', 'D', 'I', 'E', 'S']

'Y' in letras
True
elemento not in lista Verifica se um elemento está ausente em uma lista. letras = ['P', 'Y', 'L', 'A', 'D', 'I', 'E', 'S']

'Y' not in letras
False
Fatiamento ([:]) Retorna um subconjunto de elementos de uma lista. Final não inclusivo. Passo é parâmetro opcional que se não passado é 1 por default. Os parâmetros default de início e fim são o início e fim da lista, respectivamente. capitulos = ['Recife', 'São Carlos', 'Salvador', 'Macaé', 'Manaus', 'Rio']

capitulos[1:3]

capitulos[::2]








['São Carlos', 'Salvador']

['Recife', 'Salvador', 'Manaus']
lista.append(elemento) Adiciona um novo elemento ao final da lista. inteiros = [1, 2, 3]

inteiros.append(10)
[1, 2, 3, 10]
lista.insert(posicao, elemento) Adiciona um novo elemento numa determinada posição da lista. Todos os elementos daquela posição em diante são deslocados uma posição para frente. disciplinas = ["SO", "IA"]

disciplinas.insert(0, "CAP")
['CAP', 'SO', 'IA']
lista.remove(elemento) Remove o primeiro elemento especificado encontrado na lista. nomes = ['Ceci', 'Bia']

nomes.remove('Ceci')
['Bia']
lista.count(elemento) Conta quantas vezes o elemento especificado aparece na lista. Retorna zero se o elemento não pertencer à lista. frutas = ["uva", "caju", "uva", "maçã"]

frutas.count("uva")
2
lista.index(elemento) Retorna a posição da primeira ocorrência do elemento especificado. Caso não seja encontrado, um erro será lançado. tamanhos = ["XP", "M", "GG", "XG"]

tamanhos.index("GG")
2
lista.pop(posição) Remove e retorna o elemento da posição especificada. Caso não seja especificada uma posição, removerá o último elemento da lista. inteiros = [5, 6, 7, 8, 9, 10]

inteiros.pop(2)
7
lista.sort() Caso os elementos tenham implementação do operador menor (<) e sejam comparáveis (normalmente, de mesmo tipo), Python oferece uma função pronta para ordenar seu conteúdo. Caso os elementos não sejam comparáveis, um erro será lançado. cores = ['rosa', 'verde', 'lilás', 'azul']

cores.sort()
['azul', 'lilás', 'rosa', 'verde']
lista.reverse() Inverte as posições dos elementos de uma lista. O último passa a ser o primeiro, o penúltimo passa a ser o segundo e assim por diante. coffee = ['café','bolo', 'refri']

coffee.reverse()
['refri', 'bolo', 'café']
list(objeto_iterável) Cria uma lista a partir de um objeto iterável, por exemplo, uma string. Se não for objeto iterável, um erro será lançado palavra = "Python"

list(palavra)
['P', 'y', 't', 'h', 'o', 'n']
len(lista) Retorna o tamanho de uma lista. Funciona para qualquer objeto iterável. Se não for um objeto iterável, um erro será lançado. ladies = ["Nathália", "Karol", "Juliana"]

len(ladies)
3
lista.extend(lista) Insere os elementos da lista passada por parâmetro no final da lista original. É uma concatenação. inteiros = [1, 2, 3]

inteiros.extend([4, 5, 6])
[1, 2, 3, 4, 5, 6]
sum(lista_de_numeros) Retorna a soma de uma lista de números. Só funciona com números. inteiros = [16, -40, -15, 38, -4, 25]

sum(inteiros)
20
max(lista_ordenavel) Retorna o elemento de valor máximo. A lista de entrada precisa permitir relações de ordem. inteiros = [16, -40, -15, 38, -4, 25]

max(inteiros)
38
min(lista_ordenavel) Retorna o elemento de valor mínimo. A lista de entrada precisa permitir relações de ordem inteiros = [16, -40, -15, 38, -4, 25]

min(inteiros)
-40

Exemplo de como utilizar algumas das funções apresentadas:

coffee = ['refri', 'bolinha de queijo', 'bolo', 'coxinha']

coffee.append('café')
coffee.insert(0, 'água')
coffee.remove('refri')

Resultado esperado:

['água', 'bolinha de queijo', 'bolo', 'coxinha', 'café']

Para percorrer uma lista toda podemos acessar os elementos diretamente ou utilizar os índices para acessá-los:

# acessando diretamente
for elemento in lista
   elemento

# acessando através dos índices
for i in range(len(lista)):
   lista[i]

Atenção!

Acessando diretamente você pode apenas percorrer a lista, e visualizar seu conteúdo, acessando pelos índices você pode, além disso, alterar o conteúdo de uma posição.

ladies = ["Bia", "Ceci", "Débora"]
ladies[2] = "Débora"

A lista resultante será:

['Bia', 'Ceci', 'Débora']

Exercícios

Acesse a lista de exercícios para praticar o que acabamos de estudar juntas.

results matching ""

    No results matching ""