Bóson Treinamentos em Ciência e Tecnologia

Listas em Python – Como criar e manipular listas (sequências de valores)

Como criar e manipular listas em python

Como criar listas em Python

Em Python, uma lista representa uma sequência ordenada de valores.

Características:

Como criar uma lista em Python

Criamos uma lista em Python atribuindo a uma variável uma sequência de valores, separados por vírgulas, dentro de colchetes, conforme mostra a sintaxe a seguir.

Sintaxe:

nomeLista = [v1, v2, v3]

Exemplo:

notas = [5,7,8,6,9]

Também é possível criar listas de listas (que podem representar matrizes):

valores = [
 ['4', '9', '7'],
 ['2', '7', '2'],
 ['6', '3', '5'], ]

A vírgula após último elemento é opcional.

Podemos, opcionalmente, criar a lista de listas em uma única linha:

valores = [['4', '9', '7'], ['2', '7', '2'], ['6', '3', '5']]

Essa técnica deixa o código um pouco menos legível, por isso prefiro a forma anterior.

É possível criar uma lista vazia usando a função list():

notas = list()

Ou simplesmente atribuindo colchetes vazios ao nome de uma nova lista:

notas = [ ]

Concatenar listas

Podemos concatenar (unir) duas ou mais listas em Python usando o operador de concatenação +.

Exemplo:

l1 = [5,7,8,6,9]
l2 = [7,12,3,0]
lF = l1 + l2
print(lF)

Acessar os elementos de uma lista

Podemos acessar elementos individuais na lista usando colchetes [] e números de índice:

halogenios = ['F', 'Cl', 'Br', 'I', 'At']
print(halogenios[0])

Elementos no final da lista podem ser acessados usando índices negativos, começando em -1:

halogenios[-1]
halogenios[-2]

Fatiamento de listas (slicing)

Podemos fatiar uma lista – acessar um grupo sequencial de elementos de uma vez:

valores[0:2] # retorna itens da primeira até a posição 2 - 1

Assim acessamos os elementos a partir do índice 0 até o índice 2, SEM incluir o elemento de índice 2.
Se o índice inicial não for informado, é assumido automaticamente como 0:

valores[:2]

Se o índice final não for informado, é assumido automaticamente como o final da lista:

valores[0:]

Os últimos dois elementos da lista:

valores[-2:]

Total de elementos retornados em uma operação de fatiamento: índice final – índice inicial
Assim, [2:5] retorna 3 elementos a partir da posição 2 (5 – 2 = 3).

Alterar valores em listas

As listas são objetos mutáveis, o que significa que seus valores armazenados podem ser alterados na própria lista.
Podemos modificar os valores em uma lista atribuindo a ela um valor específico ou uma fatia.

Exemplo:

print('Valor atual do item 0: {}'.format(valores[0]))
valores[0] = 9
print('Novo valor do item 0: {}'.format(valores[0]))

Funções de manipulação de listas em Python

Função len(): Informa o comprimento de uma lista (ou outra sequência qualquer)

print(len(valores))

Função sorted(): retorna uma versão ordenada da lista (não modifica a lista em si)

print(sorted(valores))
print(sorted(valores, reverse=True)) # retorna lista ordenada em ordem decrescente

Retornar os elementos da lista em ordem inversa de suas posições:

print(valores[::-1])

Função sum(): retorna o somatório dos valores da lista:

print(sum(valores))

Funções min() e max(): retornam os valores mínimo e máximo da lista

print(min(valores))
print(max(valores))

Métodos para manipulação de listas em Python

Método append(): Modifica uma lista acrescentando um elemento ao seu final:

valores.append(12)
print(valores)

Método pop(): Remove e retorna o último elemento de uma lista:

valores.pop()
print(valores)

Método index(): Descobrir o número de índice de um elemento da lista:

print(valores.index(12)) # verifica a posição do valor 12 na lista

Associação de elementos: Podemos verificar se um valor está presente em uma lista com o operador in (retorna booleano):

print(12 in valores)

Exercício de Exemplo

Criar uma lista de números a partir de valores digitados pelo usuário, e então calcular sua média aritmética. Se o usuário pressionar a tecla ‘x’, o programa deve parar de pedir números e então exibir os resultados.

Solução:

lista_num = list()
while True:
    item = input('Digite um número, x para sair:')
    if item == 'x': break
        lista_num.append(int(item))
media = sum(lista_num) / len(lista_num)
print('Média aritmética: {}'.format(media))
print('\nNúmeros digitados: {}'.format(lista_num))

Iteração em listas

Podemos iterar sobre os elementos de uma lista usando um laço for:

planetas = ['Mercúrio', 'Marte', 'Saturno', 'Urano']
for planeta in planetas:
    print('Vamos viajar para', planeta)
print('Boa viagem!')

É isso aí! Para saber mais sobre listas assista aos vídeos a seguir, do canal Bóson Treinamentos em Tecnologia:

Listas em Python 01: Criação, inserção e alteração de itens. Método append e outros:

Listas em Python 02: Métodos pop, remove, sort; funções len, map, etc.:

Veja também: Como verificar se uma lista está vazia em Python

 

Sair da versão mobile