Lista Python
Lista Python
Neste tutorial, aprenderemos tudo sobre listas Python:criação de listas, alteração de elementos de lista, remoção de elementos e outras operações de lista com a ajuda de exemplos.
Vídeo:listas e tuplas do Python
As listas do Python são um dos tipos de dados mais versáteis que nos permitem trabalhar com vários elementos ao mesmo tempo. Por exemplo,
# a list of programming languages
['Python', 'C++', 'JavaScript']
Criar listas Python
Em Python, uma lista é criada colocando elementos entre colchetes
[]
, separados por vírgulas. # list of integers
my_list = [1, 2, 3]
Uma lista pode ter qualquer número de itens e eles podem ser de diferentes tipos (integer, float, string, etc.).
# empty list
my_list = []
# list with mixed data types
my_list = [1, "Hello", 3.4]
Uma lista também pode ter outra lista como um item. Isso é chamado de lista aninhada.
# nested list
my_list = ["mouse", [8, 4, 6], ['a']]
Elementos da lista de acesso
Existem várias maneiras de acessar os elementos de uma lista.
Índice de lista
Podemos usar o operador de índice
[]
para acessar um item em uma lista. Em Python, os índices começam em 0. Assim, 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.
my_list = ['p', 'r', 'o', 'b', 'e']
# first item
print(my_list[0]) # p
# third item
print(my_list[2]) # o
# fifth item
print(my_list[4]) # e
# Nested List
n_list = ["Happy", [2, 0, 1, 5]]
# Nested indexing
print(n_list[0][1])
print(n_list[1][3])
# Error! Only integer can be used for indexing
print(my_list[4.0])
Saída
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 sequências. O índice de -1 refere-se ao último item, -2 ao penúltimo item e assim por diante.
# Negative indexing in lists
my_list = ['p','r','o','b','e']
# last item
print(my_list[-1])
# fifth last item
print(my_list[-5])
Saída
e p
Lista de fatias em Python
Podemos acessar uma série de itens em uma lista usando o operador de fatiamento
:
.
# List slicing in Python
my_list = ['p','r','o','g','r','a','m','i','z']
# elements from index 2 to index 4
print(my_list[2:5])
# elements from index 5 to end
print(my_list[5:])
# elements beginning to end
print(my_list[:])
Saída
['o', 'g', 'r'] ['a', 'm', 'i', 'z'] ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
Observação: Quando fatiamos listas, o índice inicial é inclusivo, mas o índice final é exclusivo. Por exemplo,
my_list[2: 5]
retorna uma lista com elementos no índice 2, 3 e 4, mas não 5. Adicionar/alterar elementos da lista
As listas são mutáveis, o que significa que seus elementos podem ser alterados ao contrário de string ou tupla.
Podemos usar o operador de atribuição
=
para alterar um item ou um intervalo de itens.
# Correcting mistake values in a list
odd = [2, 4, 6, 8]
# change the 1st item
odd[0] = 1
print(odd)
# change 2nd to 4th items
odd[1:4] = [3, 5, 7]
print(odd)
Saída
[1, 4, 6, 8] [1, 3, 5, 7]
Podemos adicionar um item a uma lista usando o
append()
ou adicione vários itens usando o extend()
método.
# Appending and Extending lists in Python
odd = [1, 3, 5]
odd.append(7)
print(odd)
odd.extend([9, 11, 13])
print(odd)
Saída
[1, 3, 5, 7] [1, 3, 5, 7, 9, 11, 13]
Também podemos usar
+
operador para combinar duas listas. Isso também é chamado de concatenação. Os
*
operador repete uma lista para um determinado número de vezes.
# Concatenating and repeating lists
odd = [1, 3, 5]
print(odd + [9, 7, 5])
print(["re"] * 3)
Saída
[1, 3, 5, 9, 7, 5] ['re', 're', 're']
Além disso, podemos inserir um item em um local desejado usando o método
insert()
ou insira vários itens apertando-os em uma fatia vazia de uma lista.
# Demonstration of list insert() method
odd = [1, 9]
odd.insert(1,3)
print(odd)
odd[2:2] = [5, 7]
print(odd)
Saída
[1, 3, 9] [1, 3, 5, 7, 9]
Excluir elementos da lista
Podemos excluir um ou mais itens de uma lista usando a instrução del Python. Ele pode até excluir a lista completamente.
# Deleting list items
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# delete one item
del my_list[2]
print(my_list)
# delete multiple items
del my_list[1:5]
print(my_list)
# delete the entire list
del my_list
# Error: List not defined
print(my_list)
Saída
['p', 'r', 'b', 'l', 'e', 'm'] ['p', 'm'] Traceback (most recent call last): File "<string>", line 18, in <module> NameError: name 'my_list' is not defined
Podemos usar
remove()
para remover o item fornecido ou pop()
para remover um item no índice fornecido. O
pop()
O método 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, último a sair). E, se tivermos que esvaziar a lista inteira, podemos usar o
clear()
método.
my_list = ['p','r','o','b','l','e','m']
my_list.remove('p')
# Output: ['r', 'o', 'b', 'l', 'e', 'm']
print(my_list)
# Output: 'o'
print(my_list.pop(1))
# Output: ['r', 'b', 'l', 'e', 'm']
print(my_list)
# Output: 'm'
print(my_list.pop())
# Output: ['r', 'b', 'l', 'e']
print(my_list)
my_list.clear()
# Output: []
print(my_list)
Saída
['r', 'o', 'b', 'l', 'e', 'm'] o ['r', 'b', 'l', 'e', 'm'] m ['r', 'b', 'l', 'e'] []
Por fim, também podemos excluir itens em uma lista atribuindo uma lista vazia a uma fatia de elementos.
>>> my_list = ['p','r','o','b','l','e','m']
>>> my_list[2:3] = []
>>> my_list
['p', 'r', 'b', 'l', 'e', 'm']
>>> my_list[2:5] = []
>>> my_list
['p', 'r', 'm']
Métodos de lista Python
O Python tem muitos métodos de lista úteis que facilitam muito o trabalho com listas. Aqui estão alguns dos métodos de lista comumente usados.
Métodos | Descrições |
---|---|
anexar() | adiciona um elemento ao final da lista |
estender() | adiciona todos os elementos de uma lista a outra lista |
inserir() | insere um item no índice definido |
remover() | remove um item da lista |
pop() | retorna e remove um elemento no índice fornecido |
limpar() | remove todos os itens da lista |
índice() | retorna o índice do primeiro item correspondente |
contar() | retorna a contagem do número de itens passados como argumento |
classificar() | classificar itens em uma lista em ordem crescente |
reverso() | inverter a ordem dos itens na lista |
copiar() | retorna uma cópia superficial da lista |
# Example on Python list methods
my_list = [3, 8, 1, 6, 8, 8, 4]
# Add 'a' to the end
my_list.append('a')
# Output: [3, 8, 1, 6, 0, 8, 4, 'a']
print(my_list)
# Index of first occurrence of 8
print(my_list.index(8)) # Output: 1
# Count of 8 in the list
print(my_list.count(8)) # Output: 3
Compreensão de lista:maneira elegante de criar listas
A compreensão de lista é uma maneira elegante e concisa de criar uma nova lista a partir de uma lista existente em Python.
Uma compreensão de lista consiste em uma expressão seguida por uma instrução for entre colchetes.
Aqui está um exemplo para fazer uma lista com cada item sendo potência crescente de 2.
pow2 = [2 ** x for x in range(10)]
print(pow2)
Saída
[1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
Este código é equivalente a:
pow2 = []
for x in range(10):
pow2.append(2 ** x)
Uma compreensão de lista pode conter opcionalmente mais
for
ou se declarações. Um if
opcional pode filtrar itens para a nova lista. Aqui estão alguns exemplos.
>>> pow2 = [2 ** x for x in range(10) if x > 5]
>>> pow2
[64, 128, 256, 512]
>>> odd = [x for x in range(20) if x % 2 == 1]
>>> odd
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
>>> [x+y for x in ['Python ','C '] for y in ['Language','Programming']]
['Python Language', 'Python Programming', 'C Language', 'C Programming']
Visite a compreensão da lista Python para saber mais.
Outras operações de lista em Python
Lista de teste de associação
Podemos testar se um item existe em uma lista ou não, usando a palavra-chave
in
.
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# Output: True
print('p' in my_list)
# Output: False
print('a' in my_list)
# Output: True
print('c' not in my_list)
Saída
True False True
Iterando por meio de uma lista
Usando um
for
loop podemos percorrer cada item em uma lista.
for fruit in ['apple','banana','mango']:
print("I like",fruit)
Saída
I like apple I like banana I like mango
python
- Tipos de dados Python
- Operadores Python
- Instrução de passagem do Python
- Argumentos da função Python
- Python dormir()
- Compreensão da lista Python, anexar, classificar, comprimento [EXEMPLOS]
- Python Average:Como encontrar a AVERAGE de uma lista em Python
- Python List count() com EXEMPLOS
- Python remove duplicatas de uma lista
- Remover elemento de um Python LIST [clear, pop, remove, del]