S05 - Atividade de Aprendizagem (1 de 2): Listas
Preparação
Visão Geral
Na maioria dos problemas do nosso dia a dia, temos listas ou coleções de coisas: preços de ações ao longo do tempo, alunos de uma turma no ensino infantil, resultados de laboratórios médicos para vários pacientes, sessões de fotos que agendamos, entre outras.
Sempre que temos uma lista de itens, é comum querer adicionar ou remover itens, encontrar itens nela ou fazer alguma ação para alguns ou todos os itens da lista. Para resolver esses problemas, há diversas ferramentas e estratégias para trabalhar com listas em programas. Nesta aula, você aprenderá o básico sobre como armazenar e utilizar listas. Depois, em aulas futuras, você vai continuar a trabalhar com essas listas e aprenderá técnicas para resolver problemas com elas.
Uma maneira de usar isso nas próximas aulas é carregar um arquivo com dados e analisá-los de alguma forma. Por exemplo, você pode carregar um arquivo contendo taxas de vacinação de uma doença em vários países e depois fazer algumas análises para descobrir qual país tem a taxa mais baixa ou mais alta, qual é a taxa média ou quantos países têm taxas abaixo de um determinado limite. Os conceitos que você aprenderá esta semana irão prepará-lo para ser capaz de responder a perguntas como essas.
Material de Preparação
Assista aos seguintes vídeos:
Link Direto: Listas
Link Direto: Laços de Repetição e Listas
Criando Listas
Existem diferentes tipos de coleções em Python e em outras linguagens de programação, mas a mais importante em Python é a list (lista). Uma lista é simplesmente uma coleção de variáveis. Você pode colocar qualquer tipo de variável em uma lista. Para criar uma lista, é necessário usar colchetes []. Para criar uma lista vazia (e colocar itens posteriormente), você pode fazer da seguinte forma:
filmes = []
Se quiser criar uma lista já contendo alguns itens dentro dela, você deve colocar esses itens dentro dos colchetes, com vírgulas entre eles, dessa forma:
filmes = ["Toy Story", "Orgulho e Preconceito", "Star Wars"]
No último exemplo, colocamos strings na lista, mas você também pode colocar números:
notas_prova = [89.2, 78.5, 92.4, 93.8]
Dica do Instrutor:
Tecnicamente, você pode ter uma lista com diferentes tipos de variáveis (por exemplo, strings e números), mas isso geralmente dificulta trabalhar com a lista depois, e por isso não é normalmente recomendado. Em vez disso, o ideal é criar uma lista que tenha uma finalidade clara e colocar apenas as coisas que pertencem a essa finalidade. Então, se necessário, você pode criar outra lista com outros propósitos.
Nomear Variáveis do Tipo List
Como as listas contêm muitos itens, é comum atribuir nomes no plural para as variáveis. Por exemplo, notas_prova é melhor do que nota_prova porque a lista vai ter mais de uma nota. Isso não faz diferença para o programa em si, mas facilita bastante para você (e para outras pessoas que possam usar o seu programa) manter o controle de tudo.
Apesar de termos utilizado os colchetes [] para criar as listas, também é possível usar uma forma mais longa, com a palavra-chave list(), por exemplo: filmes = list(). Os colchetes são uma forma simplificada de digitar isso, por isso é o método preferido. Como list é uma palavra-chave, você deve evitar usá-la como nome da variável da lista:
# Evite usar list como nome de variável:
list = [] # EXEMPLO DE CÓDIGO INCORRETO
Se você usar list como nome da variável, perceberá que o editor mudará a cor dela porque entenderá que você está se referindo à palavra-chave. Em vez disso, escolha um nome de variável que seja mais descritivo sobre o tipo de itens que você incluirá na lista.
Adicionando Itens a uma Lista
Uma vez que você tenha uma variável do tipo list, você pode adicionar itens com a função append. Observe que você precisará usar parênteses () em seguida, assim como quando chamamos outras funções como print e input. Você aprenderá mais sobre como chamar funções e até mesmo criar suas próprias funções no próximo curso.
Você pode adicionar itens ao final da lista com append. Assim:
livros = []
livros.append("1 Néfi")
livros.append("2 Néfi")
livros.append("Jacó")
livros.append("Enos")
Percorrer Cada Item de uma Lista
Nas aulas anteriores, você aprendeu como percorrer itens de uma lista usando um loop “for” em Python:
print("Seus livros são:")
for livro in livros:
print(livro)
Trabalhando com Listas de Números
Link Direto: Listas de Números
Quando você tem uma lista de números, é comum querer encontrar a soma de todos esses números, o maior ou o menor deles, etc. Uma estratégia para fazer isso é declarar uma variável fora de um loop, para que você possa utilizá-la no loop enquanto percorre cada item individualmente.
Por exemplo, o código a seguir declara uma variável execucao_total fora da lista e, à medida que percorre os números, adiciona cada um a execucao_total:
recibos = [12.24, 18.50, 4.99, 21.75]
execucao_total = 0
for recibo in recibos:
execucao_total = execucao_total + recibo
# Para mostrar o total
print(f"O total é: {execucao_total:.2f}") # Isso mostrará o seguinte: O total é: 57.48
Um Novo Operador
Como você viu no exemplo anterior, podemos adicionar um valor a uma variável usando código, assim:
idade = 30
idade = idade + 1
print(idade) # Isso mostrará: 31
Mas como essa é uma operação tão comum, existe um operador que faz isso em uma única etapa, o operador +=:
idade = 30
idade += 1
print(idade) # Isso mostrará: 31
Essas duas versões fazem a mesma coisa, mas as pessoas geralmente preferem usar o operador += porque é mais simples, mais fácil de entender e menos propensa a erros.
Com isso em mente, o exemplo de código anterior poderia ser alterado assim:
for recibo in recibos:
# Observe o uso do operador += aqui
execucao_total += recibo
Estilo
Como você deve ter observado nesses exemplos, é recomendado colocar linhas em branco em seu programa para separar partes do código que executam diferentes tipos de tarefas. Levando isso em consideração, é recomendável que você insira linhas vazias antes e depois dos loops, bem como depois de declarar as variáveis do tipo list.
Instruções da Atividade
Visão Geral
Pratique criar listas, adicionar itens a elas e percorrer os itens da lista.
Instruções
Peça nomes de amigos para o usuário e adicione-os a uma lista. Em seguida, exiba cada um dos nomes dos amigos contidos na lista. Você deve parar de pedir para o usuário adicionar nomes de amigos quando ele digitar “fim”.
Dica 1: Você deve continuar pedindo nomes de amigos para o usuário enquanto o nome não seja “fim”. (Percebeu que isso parece um loop?)
Dica 2: Tenha cuidado para não adicionar a palavra “fim” à lista de nomes quando ela for digitada. Você pode verificar se o nome tem um significado especial antes de adicioná-lo à lista.
Os exemplos a seguir mostram o resultado esperado:
Digite o nome de um amigo: Mateus
Digite o nome de um amigo: Marcos
Digite o nome de um amigo: Lucas
Digite o nome de um amigo: João
Digite o nome de um amigo: fim
Seus amigos são:
Mateus
Marcos
Lucas
João
Outro exemplo:
Digite o nome de um amigo: Pedro
Digite o nome de um amigo: Tiago
Digite o nome de um amigo: João
Digite o nome de um amigo: fim
Seus amigos são:
Pedro
Tiago
João
Exemplo de Solução
Quando terminar seu programa, por favor, consulte o exemplo de solução para comparar sua abordagem com a apresentada.
Primeiro, trabalhe para concluir o programa sem consultar o exemplo de solução. Caso tenha trabalhado por um longo tempo e ainda enfrente dificuldades, sinta-se à vontade para usar o exemplo para ajudá-lo a finalizar seu programa.
Procedimento de Teste
Verifique se seu programa funciona corretamente seguindo cada etapa deste procedimento de teste:
Teste com apenas um nome.
Teste com 3 ou 4 nomes
Certifique-se de que a palavra “fim” não apareça no final da sua lista de amigos.
Teste digitando o mesmo nome 3 vezes antes de digitar “fim” (como resultado, você deve ver o nome repetido 3 vezes na lista).
Teste sem nomes, apenas com a palavra “fim”, e certifique-se de que não haja erros.
Envio de Tarefa
Quando você tiver concluído todas as atividades de aprendizagem desta semana, volte ao Canvas e responda ao respectivo questionário.
Próxima Atividade
- S05 - Atividade de Aprendizagem (2 de 2): Índices de Listas
Outros links:
- Voltar para: Visão Geral da Semana | Página Inicial