Listas em
Python
André Almeida
almeida.andre@servidor.uepb.edu.br
Roteiro
● Introdução
● Conceituando listas
● Funções mais utilizadas
● Exercício resolvido
● “Listas dentro de lista”
2
Introdução
● Estudar algoritmos e estruturas de dados envolve algoritmos que
manipulam dados organizados em memória de maneira mais sofisticada
do que as simples variáveis básicas que foram estudadas.
3
Introdução
● É algo mais ou menos parecido como manter um guarda-roupas
organizado no lugar de um monte de coisas atiradas no meio do quarto
de qualquer jeito.
4
Listas (Arrays)
● Certamente, você já esteve em um edifício no qual todas as unidades
existentes são comerciais. Para facilitar o entendimento deste novo
conteúdo, imagine um edifício comercial no qual, em cada andar, existe
uma empresa fictícia diferente.
5
Listas (Arrays)
● Em Python, poderíamos representar esse edifício utilizando uma
estrutura de dados chamada lista, cujos elementos são organizados de
forma linear.
6
Listas (Arrays)
● Os elementos de uma lista podem ser de diversos tipos, como os
primitivos (int, float, string e lógico) ou os mais complexos como listas,
dicionários, tuplas e objetos.
● As listas são formadas por uma sequência de elementos separados por
vírgulas e envolvidos por um par de colchetes.
7
Listas (Arrays)
● Declarando uma lista
<lista> = []
<lista> = [<elemento1>, <elemento2>, … , <elementoN>]
8
Listas (Arrays)
● Acessando elementos
lista[<índice>]
9
Listas (Arrays)
● Acessando elementos
lista[<índice>]
10
Listas (Arrays)
● Incluindo elementos
<lista>.append(<elemento>)
11
Insere ao final da
lista
upper(): transforma em maiúscula
lower(): transforma em minúsculo
Listas (Arrays)
● Incluindo elementos
<lista>.insert(<índice>, <elemento>)
12
Insere em uma
posição específica
Listas (Arrays)
● Alterando elementos
○ Para alterar o valor de um item em específico, utilizar o índice.
13
Listas (Arrays)
● Embaralhando e sorteando elementos
random.shuffle(<lista>)
random.choice(<lista>)
14
Listas (Arrays)
● Ordenando elementos
<lista>.sort(reverse = [False | True])
15
Listas (Arrays)
● Removendo elementos
<lista>.remove(<elemento>)
Remove o elemento especificado
<lista>.pop(<indice>)
Remove o elemento da posição especificada
del <lista>[<índice>]
Remove o elemento da posição especificada ou destrói a variável do tipo lista.
16
17
Listas (Arrays)
● Clonando e comparando listas
list(<lista>)
18
Exemplo
19
● Outras funções
○ <lista>.count(<elemento>) : conta a quantidade de ocorrências de um determinado
elemento na lista.
○ len(<lista>) : retorna o tamanho da lista.
○ min(<lista>) : retorna o menor elemento de uma lista.
○ max(<lista>) : retorna o maior elemento de uma lista.
○ sum(<lista>) : retorna a soma dos elementos de uma lista.
20
Listas (Arrays)
● Outras funções
○ <lista>.index(<elemento>) : retorna o índice em que se encontra a primeira ocorrência
de um elemento informado.
○ Mas se o elemento não existir?? Erro!
○ Recomenda-se verificar antes se o elemento está na lista.
if elemento in <lista>:
….
21
Listas (Arrays)
● Loops com listas
22
Listas (Arrays)
Exibe todos os itens da lista, um a um.
Exibe todos os itens da lista, um a um, mas
utilizando o índice.
Exercícios resolvidos
Listas unidimensionais
23
Exercício
24
● Os professores de Educação Física estão organizando uma seletiva para
montar a equipe de natação. Para isso, eles convocaram os 7 melhores
tempos da última competição e marcaram o tempo de cada um dos
nadadores, na prova dos 25 metros, estilo nado livre. Considerando que
não houve tempos iguais, construa um programa que leia o nome e o
tempo (em segundos) de cada atleta e, em seguida, gere o seguinte
relatório:
○ nadador com o melhor tempo;
○ nadador com o pior desempenho;
○ tempo médio dos nadadores.
25
26
Listas (Arrays)
● Observamos até agora que as listas apresentam uma estrutura linear de
valores acessíveis por um índice.
● São utilizados para dados mais simples.
● Tem como ser mais complexo? Mais robusto?
27
Listas (Arrays)
● Listas aninhadas (ou bidimensionais, ou multidimensionais)
○ Uma lista aninhada consiste na existência de uma lista como sendo elemento de outra
lista.
familia = [“João Nascimento”, [“João Vitor”, “Maria Clara”]]
28
Listas (Arrays)
● Listas aninhadas (ou bidimensionais, ou multidimensionais)
○ São estruturas que organizam elementos em linhas e colunas, formando uma grade
retangular.
○ Cada elemento é acessado por meio de dois índices: um para a linha e outro para a
coluna.
29
Referências
● Introdução à Python com aplicações de sistemas operacionais.
Disponível em: https://memoria.ifrn.edu.br/handle/1044/2090.
● Python W3Schools: https://www.w3schools.com/python/default.asp
30
André Almeida
almeida.andre@servidor.uepb.edu.br
Listas em
Python

Aula 7 - Listas em Python (Introdução à Ciencia da Computação)

  • 1.
  • 2.
    Roteiro ● Introdução ● Conceituandolistas ● Funções mais utilizadas ● Exercício resolvido ● “Listas dentro de lista” 2
  • 3.
    Introdução ● Estudar algoritmose estruturas de dados envolve algoritmos que manipulam dados organizados em memória de maneira mais sofisticada do que as simples variáveis básicas que foram estudadas. 3
  • 4.
    Introdução ● É algomais ou menos parecido como manter um guarda-roupas organizado no lugar de um monte de coisas atiradas no meio do quarto de qualquer jeito. 4
  • 5.
    Listas (Arrays) ● Certamente,você já esteve em um edifício no qual todas as unidades existentes são comerciais. Para facilitar o entendimento deste novo conteúdo, imagine um edifício comercial no qual, em cada andar, existe uma empresa fictícia diferente. 5
  • 6.
    Listas (Arrays) ● EmPython, poderíamos representar esse edifício utilizando uma estrutura de dados chamada lista, cujos elementos são organizados de forma linear. 6
  • 7.
    Listas (Arrays) ● Oselementos de uma lista podem ser de diversos tipos, como os primitivos (int, float, string e lógico) ou os mais complexos como listas, dicionários, tuplas e objetos. ● As listas são formadas por uma sequência de elementos separados por vírgulas e envolvidos por um par de colchetes. 7
  • 8.
    Listas (Arrays) ● Declarandouma lista <lista> = [] <lista> = [<elemento1>, <elemento2>, … , <elementoN>] 8
  • 9.
    Listas (Arrays) ● Acessandoelementos lista[<índice>] 9
  • 10.
    Listas (Arrays) ● Acessandoelementos lista[<índice>] 10
  • 11.
    Listas (Arrays) ● Incluindoelementos <lista>.append(<elemento>) 11 Insere ao final da lista upper(): transforma em maiúscula lower(): transforma em minúsculo
  • 12.
    Listas (Arrays) ● Incluindoelementos <lista>.insert(<índice>, <elemento>) 12 Insere em uma posição específica
  • 13.
    Listas (Arrays) ● Alterandoelementos ○ Para alterar o valor de um item em específico, utilizar o índice. 13
  • 14.
    Listas (Arrays) ● Embaralhandoe sorteando elementos random.shuffle(<lista>) random.choice(<lista>) 14
  • 15.
    Listas (Arrays) ● Ordenandoelementos <lista>.sort(reverse = [False | True]) 15
  • 16.
    Listas (Arrays) ● Removendoelementos <lista>.remove(<elemento>) Remove o elemento especificado <lista>.pop(<indice>) Remove o elemento da posição especificada del <lista>[<índice>] Remove o elemento da posição especificada ou destrói a variável do tipo lista. 16
  • 17.
  • 18.
    Listas (Arrays) ● Clonandoe comparando listas list(<lista>) 18
  • 19.
  • 20.
    ● Outras funções ○<lista>.count(<elemento>) : conta a quantidade de ocorrências de um determinado elemento na lista. ○ len(<lista>) : retorna o tamanho da lista. ○ min(<lista>) : retorna o menor elemento de uma lista. ○ max(<lista>) : retorna o maior elemento de uma lista. ○ sum(<lista>) : retorna a soma dos elementos de uma lista. 20 Listas (Arrays)
  • 21.
    ● Outras funções ○<lista>.index(<elemento>) : retorna o índice em que se encontra a primeira ocorrência de um elemento informado. ○ Mas se o elemento não existir?? Erro! ○ Recomenda-se verificar antes se o elemento está na lista. if elemento in <lista>: …. 21 Listas (Arrays)
  • 22.
    ● Loops comlistas 22 Listas (Arrays) Exibe todos os itens da lista, um a um. Exibe todos os itens da lista, um a um, mas utilizando o índice.
  • 23.
  • 24.
    Exercício 24 ● Os professoresde Educação Física estão organizando uma seletiva para montar a equipe de natação. Para isso, eles convocaram os 7 melhores tempos da última competição e marcaram o tempo de cada um dos nadadores, na prova dos 25 metros, estilo nado livre. Considerando que não houve tempos iguais, construa um programa que leia o nome e o tempo (em segundos) de cada atleta e, em seguida, gere o seguinte relatório: ○ nadador com o melhor tempo; ○ nadador com o pior desempenho; ○ tempo médio dos nadadores.
  • 25.
  • 26.
    26 Listas (Arrays) ● Observamosaté agora que as listas apresentam uma estrutura linear de valores acessíveis por um índice. ● São utilizados para dados mais simples. ● Tem como ser mais complexo? Mais robusto?
  • 27.
    27 Listas (Arrays) ● Listasaninhadas (ou bidimensionais, ou multidimensionais) ○ Uma lista aninhada consiste na existência de uma lista como sendo elemento de outra lista. familia = [“João Nascimento”, [“João Vitor”, “Maria Clara”]]
  • 28.
    28 Listas (Arrays) ● Listasaninhadas (ou bidimensionais, ou multidimensionais) ○ São estruturas que organizam elementos em linhas e colunas, formando uma grade retangular. ○ Cada elemento é acessado por meio de dois índices: um para a linha e outro para a coluna.
  • 29.
  • 30.
    Referências ● Introdução àPython com aplicações de sistemas operacionais. Disponível em: https://memoria.ifrn.edu.br/handle/1044/2090. ● Python W3Schools: https://www.w3schools.com/python/default.asp 30
  • 31.