Listas e Dicionários
Definição As vezes usamos determinadas variáveis para gravar determinados valores, como uma string para gravar determinada cor (“vermelho”). Mas e se fosse preciso gravar várias cores? Para gravar várias cores (“vermelho”, “verde”, “amarelo”, etc.), ao invés de criar uma variável para cada, criamos uma lista de cores.
Exemplo de lista Neste exemplo, temos uma lista de inteiros, mas uma lista pode conter quaisquer tipos de objetos. Exemplo: >>> lista = [1, 2, 3] >>> lista [1, 2, 3]
Acesso a lista Como qualquer seqüência a lista possui um sistema de endereçamento. >>> lista[0] 1 >> lista[0] + lista[2] 4 O operador “+” representa um concatenação na lista
Operador del O operador del pode ser usado para remover elementos de uma lista Ex.: >>> lista [1, 2, 3, ['ab', 'CD']] >>> del lista [2] [1, 2, ['ab', 'CD']] >>> del lista [2][1] [1, 2, ['ab']]
Len, min e max len (lista) retorna o número de elementos de lista; min (lista) e max (lista) retornam o menor/maior elemento de lista; Ex.: >>> lista = [1, 2, 9, 3, 4] >>> min(lista) 1 >>> len (lista) 5
Continuando... >>> max (lista) 9 >>> max (['a', 'b', 'c']) 'c'
Dicionários Um dicionário representa uma coleção de elementos onde é possível utilizar um índice de qualquer tipo imutável; Ao contrário da lista, onde índices são sempre inteiros seqüencialmente atribuídos; É costumeiro usar os termos chave e valor (key/value) para descrever os elementos de um dicionário - a chave é o índice, e o valor, a informação correspondente àquela chave.
Sintaxe Para declarar dicionários, utilizamos o símbolo chaves, separando o índice do valor por dois pontos e separando os pares índice-valor por vírgulas: >>> refeicoes = {"café" : "café", "almoço" : "macarrão", ... "jantar" : "sopa"} >>> print refeicoes["almoço"] macarrao
Exemplo >>> precos_modelos = {98 : 89, 99 : 119, 2000 : 199} >>> print precos_modelos[98] 89 Neste exemplo criamos dois dicionários com três elementos cada um. As chaves do dicionário refeicoes são as strings "café", "almoço" e "jantar", e os valores respectivos, as strings "café", "macarrão" e "sopa".
Métodos do dicionário O dicionário também possui alguns métodos notáveis: keys() retorna uma lista (sim, exatamente, do tipo lista) com as chaves do dicionário; values() retorna uma lista com os valores do dicionário; items() retorna uma lista de tuplas com o conteúdo do dicionário, cada tupla contendo um par (chave, valor).
Exemplo de Keys >>> precos_modelos.keys() [99, 98, 2000] >>> precos_modelos.values() [119, 89, 199] # A ordem dos elementos retornados por keys() # values() é arbitrária; não confie nela.
Exemplo de Values has_key(k) verifica se a lista possui aquela chave: >>> precos_modelos.has_key(98) True >>> precos_modelos.has_key(97) False
Exemplo de Update update(d2) atualiza o dicionário com base em um segundo dicionário fornecido como parâmetro; Elementos do dicionário original que também existem no segundo são atualizados; Elementos que existem no segundo mas que não existem no original são adicionados a este. >>> precos_modelos.update({2000 : 600, 2001: 700}) >>> print precos_modelos {99: 400, 98: 300, 2001: 700, 2000: 600}
O próximo passo corresponde a aula: Listas de Listas Nesta aprenderemos a fazer outra estrutura de dados muito importante.