O Python oferece uma variedade de tipos de dados compostos, geralmente chamados de sequências. List é um dos tipos de dados mais frequentemente usados e muito versáteis usados no Python.
Como criar uma lista em Python ?
Na programação Python, uma lista é criada colocando todos os itens (elementos) entre colchetes [], separados por vírgulas.
Pode ter qualquer número de itens e eles podem ser de tipos diferentes (número inteiro, número flutuante, sequência etc.).
Exemplo
# lista vazia
minha_lista = []
print(minha_lista)
# lista de números inteiros
minha_lista = [1, 2, 3]
print(minha_lista)
# lista com tipos de dados mistos
minha_lista= [1, "Olá", 3,4]
print(minha_lista)
Resultado
[]
[1, 2, 3]
[1, 'Olá', 3, 4]
Uma lista também pode ter outra lista como um item. Isso é chamado de lista aninhada.
Exemplo
# lista aninhada
minha_lista = ["casa", [8, 4, 6], ['a']]
print(minha_lista)Resultado
['casa', [8, 4, 6], ['a']]
Como acessar elementos de uma lista em Python?
Existem várias maneiras pelas quais podemos acessar os elementos de uma lista.
Índice da lista
Podemos usar o operador de índice [] para acessar um item em uma lista. No Python, os índices começam em 0. Portanto, uma lista com 5 elementos terá um índice de 0 a 4.
Tentar acessar índices diferentes desses gerará um IndexError. O índice deve ser um número inteiro. Não podemos usar float ou outros tipos, isso resultará em TypeError.
As listas aninhadas são acessadas usando a indexação aninhada.
# Indexação de lista
minha_list = ['p', 'r', 'o', 'b', 'e']
# Saída: p
print(minha_list[0])
# Saída: o
print(minha_list[2])
# Saída: e
print(minha_list[4])
# Lista aninhada
n_list = ["Feliz", [2, 0, 1, 5]]
# Indexação aninhada
print(n_list[0][1])
print(lista_n[1][3])
# Erro! Somente número inteiro pode ser usado para indexação
print(minha_list[4.0]
Resultado
p
o
e
a
5
Traceback (most recent call last):
File "<string>", line 21, in <module>
TypeError: list indices must be integers or slices, not float
Indexação negativa
Python permite indexação negativa para suas seqüências. O índice de -1 refere-se ao último item, -2 ao segundo último item e assim por diante.
# Indexação negativa em listas
minha_list = ['p', 'r', 'o', 'b', 'e']
print(minha_list[-1])
print(minha_list[-5])Resultado
e
p
Como dividir listas em Python?
Podemos acessar um intervalo de itens em uma lista usando o operador de fatiar: (dois pontos).
# Lista de fatias em Python
minha_list = ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
# elementos 3 a 5
print(minha_list[2: 5])
# elementos começando no quarto
print(minha_list[: - 5])
# elementos 6º ao fim
print(minha_list[5:])
# elementos do começo ao fim
print(minha_list[:])
Resultado
['o', 'g', 'r']
['p', 'r', 'o', 'g']
['a', 'm', 'i', 'z']
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
Como alterar ou adicionar elementos a uma lista?
As listas são mutáveis, o que significa que seus elementos podem ser alterados, diferentemente da string ou da tupla.
Podemos usar o operador de atribuição (=) para alterar um item ou um intervalo de itens.
# Corrigindo valores de erro em uma lista
impar = [2, 4, 6, 8]
# alterar o primeiro item
impar[0] = 1
print(impar)
# alterar itens do 2º ao 4º
ímpar[1: 4] = [3, 5, 7]
print(impar)Resultado
[1, 4, 6, 8]
[1, 3, 5, 7]
Podemos adicionar um item a uma lista usando o método append () ou adicionar vários itens usando o método extend ().
# Anexando e estendendo listas em Python
impar = [1, 3, 5]
impar.append(7)
print(impar)
impar.extend([9, 11, 13])
print(impar)
Resultado
[1, 3, 5, 7]
[1, 3, 5, 7, 9, 11, 13]
Também podemos usar o operador + para combinar duas listas. Isso também é chamado de concatenação.
O operador * repete uma lista pelo número determinado de vezes.
# Concatenando e repetindo listas
impar = [1, 3, 5]
print(impar + [9, 7, 5])
print (["re"] * 3)
Resultado
[1, 3, 5, 9, 7, 5]
['re', 're', 're']
Além disso, podemos inserir um item no local desejado usando o método insert () ou inserir vários itens, espremendo-o em uma fatia vazia de uma lista.
# Demonstração do método list insert ()
impar = [1, 9]
impar.insert(1,3)
print(impar)
impar[2: 2] = [5, 7]
print(impar)
Resultado
[1, 3, 9]
[1, 3, 5, 7, 9]
Como excluir ou remover elementos de uma lista em Python ?
Podemos excluir um ou mais itens de uma lista usando a palavra-chave del. Pode até excluir a lista completamente.
# Excluindo itens da lista
minha_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# excluir um item
del.minha_list[2]
print(minha_list)
# excluir vários itens
del.minha_list[1: 5]
print(minha_list)
# excluir lista inteira
del.minha_list
# Erro: lista não definida
print(minha_list)
Resultado
['p', 'r', 'b', 'l', 'e', 'm']
['p', 'm']
Traceback (most recent call last):
File "<string>", line 18, in <module>
NameError: name 'minha_list' is not defined
Podemos usar o método remove() para remover o item especificado ou o método pop() para remover um item no índice especificado.
O método pop() remove e retorna o último item se o índice não for fornecido. Isso nos ajuda a implementar listas como pilhas (estrutura de dados primeiro a entrar, a última a sair).
Também podemos usar o método clear() para esvaziar uma lista.
minha_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
minha_list.remove('p')
# Saída: ['r', 'o', 'b', 'l', 'e', 'm']
print(minha_list)
# Saída: 'o'
print(minha_lista.pop(1))
# Saída: ['r', 'b', 'l', 'e', 'm']
print(minha_list)
# Saída: 'm'
print(minha_list.pop())
# Saída: ['r', 'b', 'l', 'e']
print(minha_list)
minha_list.clear()
# Resultado: []
print(minha_list)
Resultado
['r', 'o', 'b', 'l', 'e', 'm']
o
['r', 'b', 'l', 'e', 'm']
m
['r', 'b', 'l', 'e']
[]
Métodos de lista em Python
Os métodos disponíveis com objetos de lista na programação Python são tabulados abaixo.
Eles são acessados como list.method(). Alguns dos métodos já foram usados acima.
► Métodos de lista Python
append() - adiciona um elemento ao final da lista
extend() - Adicione todos os elementos de uma lista à outra lista
insert() - Insere um item no índice definido
remove() - remove um item da lista
pop() - Remove e retorna um elemento no índice especificado
clear() - Remove todos os itens da lista
index() - Retorna o índice do primeiro item correspondente
count() - Retorna a contagem do número de itens passados como argumento
sort() - Classifica itens em uma lista em ordem crescente
reverse() - Inverte a ordem dos itens na lista
copy() - Retorna uma cópia superficial da lista
# Métodos de lista Python
minha_list = [3, 8, 1, 6, 0, 8, 4]
# Saída: 1
print(minha_list.index(8))
# Saída: 2
print(minha_list.count(8))
minha_list.sort ()
# Saída: [0, 1, 3, 4, 6, 8, 8]
print(minha_list)
minha_list.reverse()
# Saída: [8, 8, 6, 4, 3, 1, 0]
print(minha_list)
Resultado
1
2
[0, 1, 3, 4, 6, 8, 8]
[8, 8, 6, 4, 3, 1, 0]

0 Comentários