Você está na página 1de 17

UNIVERSIDADE SÃO FRANCISCO

Linguagem de Programação Python


LISTAS

Algoritmos Computacionais
Profa. Ms. Estefania Bissoni
 Variáveis compostas - LISTAS
Lista é um conjunto sequencial de valores, onde cada valor é identificado através de um
índice. O primeiro valor tem índice 0. Uma lista em Python é declarada da seguinte forma:
Nome_Lista = [ valor1, valor2, ..., valorN]
Uma lista pode ter valores de qualquer tipo, incluindo outras listas.

CRIANDO UMA LISTA


lista = []
print(lista)
[]

L = [3 , 'abacate' , 9.7 , [5 , 6 , 3] , "Python" , (3 , 'j')]


print(L[2])
9.7

print(L[3])
[5,6,3]

print(L[3][1])
6
 Alterando um elemento da lista, basta fazer uma atribuição de valor através do
índice. O valor existente será substituído pelo novo valor.

Exemplo

lista = [3 , 'abacate' , 9.7 , [5 , 6 , 3] , "Python" , (3 , 'j')]


lista[1] = 'morango'
print(lista)
[3, 'morango', 9.7, [5, 6, 3], 'Python', (3, 'j')]

A tentativa de acesso a um índice inexistente resultará em erro.


lista[7] = 'banana'
 Operadores de listas
A linguagem Python dispõe de vários métodos e operadores para auxiliar na manipulação
de listas. O primeiro e mais básico é o operador de acesso aos seus itens a partir dos
índices. Para compreendê-lo, é importante entender como os dados são armazenados
nessa estrutura.

A lista representada nessa figura é composta por quatro elementos, cujos índices variam
de zero a três. Por exemplo, o primeiro objeto, no índice 0, é a string 'O carro'. Tendo
em mente essa organização interna, podemos acessar cada um dos elementos
utilizando a sintaxe lista[índice].
Exemplo
lista = ['O carro','peixe',123,111]
print(lista[2])
123
 Funções para manipulação de listas
A lista é uma estrutura mutável, ou seja, ela pode ser modificada. Na
tabela a seguir estão algumas funções utilizadas para manipular listas.
FUNÇÕES PARA MANIPULAR LISTAS.

len() - O comprimento de uma lista, ou o número de itens que a compõem, pode ser
obtido a partir da função len(), como mostra o código abaixo, em que é impresso o
valor 4, indicando que a variável lista contém 4 elementos.

Exemplo:
lista = ['O carro','peixe',123,111]
print(len(lista))
4

append() - tem por objetivo adicionar um novo elemento no final da lista.


Exemplo:
lista = ['O carro','peixe',123,111]
lista.append('chocolate')
print(lista)
['O carro', 'peixe', 123, 111, 'chocolate']
insert() para a inserção em uma posição específica, podemos utilizar o
método insert() que, além do elemento a ser inserido, recebe também o índice que ele
deve assumir.
lista = ['O carro','peixe',123,111]
lista.insert(1,'frango')
print(lista)
['O carro', 'frango', 'peixe', 123, 111]

pop() remove o último item da lista e o retorna como resultado da operação. Caso seja
necessário remover um índice específico, basta informá-lo como argumento.
lista = ['O carro','peixe',123,111]
lista.pop()
print(lista)
['O carro', 'peixe', 123]

lista = ['O carro','peixe',123,111]


lista.pop(1)
print(lista)
['O carro', 123, 111]
remove(item) a remoção é feita com base no valor que você quer eliminar.

lista = ['O carro','peixe',123,111]


lista.remove('peixe')
print(lista)
['O carro', 123, 111]

Para apagar elementos de uma lista com o comando del

lista = ['O carro','peixe',123,111]


del lista[1]
print(lista)
['O carro', 123, 111]

Exemplo com operador in


lista = ['O carro','peixe',123,111]
if 'peixe' in lista:
lista.remove('peixe')
print(lista)
['O carro', 123, 111]
 Criando uma lista com a função list
O range já cria os elementos de forma ordenada de forma crescente na lista.

lista = list(range(4,11))
print(lista)
[4, 5, 6, 7, 8, 9, 10]

Caso você queira criar uma lista com elementos fora de ordem
lista = [8,2,5,4,9,3,0]
print(lista)
[8, 2, 5, 4, 9, 3, 0]

 Método sort() – ordena os elementos da lista


lista = [8,2,5,4,9,3,0]
lista.sort()
print(lista)
[0, 2, 3, 4, 5, 8, 9]
 Método sort() – ordenando os elementos da lista de forma inversa
utilizando o parâmetro reverse.

Exemplo:
lista = [8,2,5,4,9,3,0]
lista.sort(reverse=True)
print(lista)
[9, 8, 5, 4, 3, 2, 0]
Fatiamento de listas
O fatiamento de listas é semelhante ao fatiamento de strings.

Exemplo:
L = [3 , 'abacate' , 9.7 , [5 , 6 , 3] , "Python" , (3 , 'j')]
L[1:4]  seleciona os elementos das posições 1,2,3
['abacate', 9.7, [5, 6, 3]]

L[2:]  seleciona os elementos a partir da posição 2


[9.7, [5, 6, 3], 'Python', (3, 'j')]

L[:4]  seleciona os elementos até a posição 3


[3, 'abacate', 9.7, [5, 6, 3]]
 Criação de listas com range ( )
A função range() define um intervalo de valores inteiros. Associada a list[], cria
uma lista com os valores do intervalo.
A função range() pode ter de 1 a 3 parâmetros:
range(n)  gera um intervalo de 0 a n-1
range(i , n)  gera um intervalo de i a n-1
range(i , n, p)  gera um intervalo de i a n-1 com intervalo p entre os números.
Exemplos:
L1 = list(range(5))
print(L1)
[0, 1, 2, 3, 4]
L2 = list(range(3,8))
print(L2)
[3, 4, 5, 6, 7]
L3 = list(range(2,11,3))
print(L3)
[2, 5, 8]
Outros exemplos:
lista = []
lista.append(5)
lista.append(9)
lista.append(4)
print(lista)
[5, 9, 4]

lista = []
lista.append(5)
lista.append(9)
lista.append(4)
for v in lista:
O comando end=‘ ‘ possibilita a
print(f'{v}...', end='') impressão dos elementos na
5...9...4... mesma linha
Outros exemplos:

lista = []
lista.append(5)
lista.append(9)
lista.append(4)
A função
for c, v in enumerate(lista):
enumerate()
print(f'Na posição {c} encontrei o valor {v}!') possibilita imprimir
print('Cheguei ao final da lista') as posições dos
números na lista.

Na posição 0 encontrei o valor 5!


Na posição 1 encontrei o valor 9!
Na posição 2 encontrei o valor 4!
Cheguei ao final da lista
Outros exemplos: lendo valores pelo teclado e colocando na lista.
lista = []
for cont in range (0, 5):
lista.append(int(input('Digite um valor: ')))

for c, v in enumerate(lista):
print(f'Na posição {c} encontrei o valor {v}')
print('Cheguei ao final da lista')

Digite um valor: 6
Digite um valor: 12
Digite um valor: 4
Digite um valor: 52
Digite um valor: 7
Na posição 0 encontrei o valor 6
Na posição 1 encontrei o valor 12
Na posição 2 encontrei o valor 4
Na posição 3 encontrei o valor 52
Na posição 4 encontrei o valor 7
Cheguei ao final da lista
Concatenação e multiplicação
Também é possível concatenar listas por meio do operador de adição + e
multiplicá-las por um inteiro, o que gerará várias cópias dos seus itens. O código
a seguir traz alguns exemplos dessas operações:
Concatenação ( + )
a = [0,1,2]
b = [3,4,5]
c=a+b
print(c)
[0, 1, 2, 3, 4, 5]

Repetição ( * )
L = [1,2]
R=L*4
print(R)
[1, 2, 1, 2, 1, 2, 1, 2] #gera 4 cópias da lista L
LIGAÇÃO entre listas
lista1 = [2,3,4,5]
lista1 = [2,3,4,5]
lista2 = lista1
lista2 = lista1
lista2[2] = 8
print(f'Lista 1: {lista1}')
print(f'Lista 1: {lista1}')
print(f'Lista 2: {lista2}')
print(f'Lista 2: {lista2}')
Lista 1: [2, 3, 4, 5]
Lista 1: [2, 3, 8, 5]
Lista 2: [2, 3, 4, 5]
Lista 2: [2, 3, 8, 5] # a ligação altera o elemento
nas duas listas.
CÓPIA de uma lista
lista1 = [2,3,4,5]
lista2 = lista1[:] #pega todos os valores de a e cria em b
print(f'Lista 1: {lista1}')
print(f'Lista 2: {lista2}')

Lista 1: [2, 3, 4, 5]
Lista 2: [2, 3, 4, 5]

Você também pode gostar