Вы находитесь на странице: 1из 20

Aula 8: Listas

Prof. Saulo Oliveira


Fundamentos de Programação
Fundamentos de Programação

Agenda da aula de hoje


• Tipo list no Python;

• Manipulação por índices;

• Métodos.

2
Fundamentos de Programação

Mas antes…

3
Fundamentos de Programação

Python

4
Fundamentos de Programação

Variáveis do tipo list


• Frequentemente, necessitaremos trabalhar com grandes coleções
de dados e precisaremos guardar esses dados em memória;
• Criar uma variável para cada item de dado é impraticável;
• Utilizaremos variáveis compostas, chamadas vetores;
• Um vetor é conhecido como variável composta, homogênea, e
unidimensional.

• Variável composta: conjunto de variáveis com o mesmo nome;


• Homogênea: variáveis do mesmo tipo;
• Unidimensional: acessadas por único índice.

5
Fundamentos de Programação

Lists
• Variável composta: conjunto de variáveis com o mesmo nome;
• Homogênea: variáveis do mesmo tipo;
• Unidimensional: acessadas por único índice.
• Como as variáveis no vetor têm o mesmo nome, o que as distingue
é um índice que referencia sua localização dentro da estrutura (da
mesma forma que vimos em strings).
pares = [0, 2, 4, 6, 8, 10]
print(pares[0])
print(pares[-1])

6
Fundamentos de Programação

Acesso por índice


• Os índices sempre iniciam por 0 (zero). Por exemplo:
numeros = [45, 34, 1, 2, 3]

Índices

0 1 2 3 4

45 34 1 2 3

Valores

print(numeros[4])
print(numeros[3])
print(numeros[13]) 7
Fundamentos de Programação

Acesso por índice negativo


• Os índices sempre iniciam por -1. Por exemplo:
numeros = [45, 34, 1, 2, 3]

Índices positivos Índices negativos


-5 -4 -3 -2 -1

0 1 2 3 4

45 34 1 2 3

Valores
print(numeros[-8])
8
print(numeros[-3])
Fundamentos de Programação

Tamanho da list
• Uma list tem um tamanho associado (quantidade de valores);
• O tamanho de uma list pode ser obtido utilizando-se a função len.

Fatiamento de list
• Se quisermos usar apenas um subconjunto de uma list, podemos
usar fatiamento (tal qual já fazemos com as strings).

[i:f]

# i indica o índice do início do fatiamento


# f indica o índice do fim do fatiamento
# (não inclusivo)
9
Fundamentos de Programação

Intervalo (range) como list


• O range é um tipo de lista que assim como as strings são imutáveis;


 a = range(4) # [0, 1, 2, 3]

 print(a[1]) # 1
a[1] = 10

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

 TypeError: 'range' object does not support item
assignment

10
Fundamentos de Programação

Intervalo (range) como list


• O range é um tipo de lista que assim como as strings são imutáveis;


 a = range(4) # [0, 1, 2, 3]

 print(a[1]) # 1
a[1] = 10

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

 TypeError: 'range' object does not support item
assignment

• Convertemos o range para uma lista comum usando list.


b = list(a)
b[1] = 10 # [0, 10, 2, 3]
11
Fundamentos de Programação

Operadores in e not in
• O operador in permite verificar se um elemento está contido em
uma list;


 numeros = [1, 2, 3, 4, 5]

 4 in numeros # True
[4] in numeros # ???

• O operador not in permite verificar se uma elemento não está


contida em uma list.
6 not in numeros # True
[] in numeros # ???

12
Fundamentos de Programação

Criação de listas
vazia = [] # lista vazia
unitaria = [1] # lista com um elemento
notas = [0] * 3 # lista com três elementos

Concatenação de listas
[1] + [2] # gera a lista [1, 2]
[1] + [3, 4] # gera a lista [1, 3, 4]

13
Fundamentos de Programação

Outros métodos de lists


numeros = [1, 2, 3, 4]

append: list.append(valor)
numeros.append(10) # [1, 2, 3, 4, 10]

del: del list[índice]


del numeros[1] # [1, 3, 4, 10]
del numeros[100] # ????

count: list.count(valor)
numeros.count(5) # 0
numeros.count(3) # 1
14
Fundamentos de Programação

Outros métodos de lists


numeros = [2, 1, 3, 4, 3, 3]

sort: list.sort()
numeros.sort() # [1, 2, 3, 3, 3, 4]

index: list.index(valor)
numeros.index(4) # 5

reverse: list.reverse()
numeros.reverse() # [4, 3, 3, 3, 2, 1]

15
Instalação e Manutenção de Computadores

Atividade

16
Fundamentos de Programação

Exercício
1. Escreva um programa para remover duplicatas de uma lista.


2. Escreva um programa para obter a frequência dos elementos em


uma lista.


3. Escreva um programa para encontrar itens comuns em duas listas.


4. Escreva um programa para converter uma lista de múltiplos inteiros


em um único inteiro.


Lista de exemplos: [11, 33, 50]

Saída esperada: 113350

17
Instalação e Manutenção de Computadores

Próxima aula

18
Fundamentos de Programação

Próxima aula de hoje


• Exercício prático pelo classroom

19
Fundamentos de Programação

Material e discussão fora da sala

Prof. Saulo Oliveira


Contato: saulo.freitas.oliveira@gmail.com

20

Вам также может понравиться