Curso de Programação em Python Lição 5- Lista,Tupla,Dicionario

Bem vindos á quinta aula do curso de programação em Python.\r\n\r\nEste artigo faz parte do curso de programação em Python do INFOmoz. Para acessar outras aulas do curso, por favor visite o índice do curso de programação em Python . Comentários e dúvidas relacionados á esta aula poderão ser deixados na secção de comentários deste texto\r\n

Objectivos da quinta aula do curso de programação em Python

\r\n

\r\n
\r\n\r\n
    \r\n

  • Conceito de sequências(arrays)
  • \r\n

\r\n

    \r\n

  • Tipos de sequencias em Python
  • \r\n

\r\n

    \r\n

  • Acesso a dados de sequencias
  • \r\n

\r\n

Sequências (Arrays) em Python

\r\nEm programação, muitas vezes torna-se necessário agrupar variáveis ou dados do mesmo tipo. Por exemplo, se quisermos fazer um programa para gerir uma turma, temos que criar variáveis para armazenar cada nome dos alunos da turma, depois outras variáveis para cada nota de cada aluno. Mas isso pode ser simplificado usando sequências. Sequências também facilitam muito no acesso á dados por meio de Strings, como veremos mais adiante.\r\n\r\nJá havia dito nas aulas anteriores que String é uma sequência de caracteres, agora vamos ver outros tipos de sequências em Python:\r\n

Lista

\r\nUma das mais importantes sequências em Python é a lista.\r\n\r\nA sintaxe da lista é:\r\n\r\n

\r\nlista=[dado1,dado2,dado3,....]\r\n

\r\n\r\n\r\nExemplo:\r\n\r\n

\r\nlista=[“Elisio”,18,”Estudante”]\r\n

\r\n\r\n\r\nNesta altura do campeonato ainda preciso te lembrar de abrir o IDLE para ir experimentando os exemplos? Espero que não!!!\r\n\r\n \r\n\r\nNote que diferentemente dos arrays de outras linguagens de programação, as listas em Python podem conter dados de qualquer tipo, mesmo uma mistura de tipos, até pode conter outras listas,veja os exemplos:\r\n\r\n

\r\n>>>lista1=[“Eu”,”Tu”,”Ele”]\r\n>>>lista2=[10,11,12]\r\n>>>lista3=[15,”sim”,”nao”]\r\n>>>lista=[lista1,lista2,lista3]\r\n>>>lista (veja a saida)\r\n

\r\n\r\n\r\nPara acessar “a dados de uma lista usa-se o mesmo princípio que para Strings, sendo assim:\r\n\r\n

\r\nlista1[1]\r\n“tu”\r\n>>>lista[1]\r\n[10,11,12] # imprime a lista 2 que é o objecto que está na posição 1 da lista\r\n>>>lista[1][2]\r\n12\r\n

\r\n\r\n\r\nAqui, você ja deve ter imaginado como trabalhar com Matrizes em Python né? Ainda não? Não se preoucupe teremos exemplos mais adiante.\r\n\r\n \r\n\r\nTal como no caso de Strings, em Python também usamos o operador + para indcar concatenação:\r\n\r\n

\r\nlista1+lista2\r\n[“Eu”,”Tu”,”Ele”,10,11,12]\r\n

\r\n\r\n\r\nMas só podemos concatenar listas com listas,o exemplo a seguir dará um erro porque não é possivel concatenar lista com um inteiro:\r\n\r\n

\r\nlista+2\r\nTraceback (most recent call last):\r\nFile “”, line 1, in\r\nlista+2\r\n TypeError: can only concatenate list (not “int”) to list\r\n

\r\n\r\n\r\nNão se preoucupe em decifrar essas mensagens agora, tal como disse, veremos na próxima aula.\r\n\r\n \r\n\r\nTambém podemos acessar os dados da lista na ordem inversa. O último elemento é [-1], o penultimo [-2] e assim por diante.\r\n\r\nA função “len” que vimos em Strings também é válida para listas e devolve o seu tamanho:\r\n\r\n

\r\nlen(lista1)\r\n3\r\n

\r\n\r\n\r\nAo contrário de Strings, podemos alterar o valor em uma determinada posição da lista:\r\n\r\n

\r\n>>>lista1[2]=”ninguem”\r\n>>>lista1[1]=2\r\n>>>lista[1]=lista[0]\r\n(Verificar os resultados)\r\n

\r\n\r\nE podemos também aumentar o seu tamanho com a função append:\r\n\r\n

\r\n>>>lista1.append(2)\r\n>>>lista1\r\n(verificar o resultado)\r\n

\r\n\r\nOu ainda diminuir com a função remove:\r\n\r\n

\r\n>>>lista.remove(valor) #remove o valor indicado da lista, se não existir retorna uma mensagem de erro.\r\n>>>lista.remove(lista[posição]) #remove o valor na posição indicada.\r\n

\r\n\r\nExperimente essas funções com as listas anteriores.\r\n

Tuplas em Python

\r\nAs tuplas são sequências como listas, mas com uma diferença, as tuplas são imutaveis como Strings. A sua sintaxe é:\r\n\r\n

\r\ntupla=(dado1,dado2,...)\r\n

\r\n\r\n\r\nNote que aqui são parenteses curvos e não rectos como listas\r\n\r\n \r\n\r\nCom as tuplas podemos fazer o chamado “Packing-Unpacking” que é muito comun em programas Python:\r\n\r\n

\r\nnome,idade=”Elisio”,18\r\n

\r\n\r\n\r\nOu ainda trocar valores de variaveis facilmente:\r\n\r\n

\r\na,b=b,a\r\n

\r\n\r\n\r\nQuem já programou em outras linguagens já pode notar o quanto Python é simples.\r\n\r\n \r\n

Dicionários em Python

\r\nOs dicionários não são sequencias, porque não são indexados sequêncialmente como listas ou Strings, mas através de chaves. A sua sintaxe é:\r\n\r\n

\r\ndicionario={chave1:dado1,chave2:dado2,....}\r\n

\r\n\r\n\r\nExemplo:\r\n\r\n

\r\n>>>aluno={‘nome’:’Elisio’,’idade’:18,’profissao’:’Estudante’}\r\n>>>aluno\r\n(verificar o resultado)\r\n

\r\n\r\n\r\nPara adicionar um dado á um dicionario é só fazer:\r\n\r\n

\r\naluno[‘classificacao’]=’aprovado’\r\naluno\r\n(verificar o resultado)\r\n

\r\n\r\n\r\nAsssim criamos um dado aprovado, cuja chave é classificação\r\n\r\n \r\n\r\nPara obter um valor de uma chave:\r\n\r\n

\r\n>>>aluno[‘idade’]\r\n 18\r\n

\r\n\r\n\r\nPodemos também alterar o valor de uma chave, assim:\r\n\r\n

\r\n>>>aluno[‘classificacao’]=’reprovado’\r\n

\r\n\r\n\r\nAs funções disponiveis para dicionario são:\r\n\r\n

\r\n>>>dicionario.keys() # retorna todas as chaves do dicionario\r\n>>>dicionario.has_key(chave) #retorna true se o dicionário possuir a chave indicada e false caso contrário.\r\n>>>dicionario.items() #retorna o par chave/item.\r\n

\r\n\r\n\r\nExperimente esssas funções com alguns dicionários enquanto vamos para a lição 6, onde falaremos de erros, excepções.\r\n\r\n \r\n\r\nE se te dizer que daqui a duas aulas farás programas completos e alguns games?\r\n\r\nComentários relacionados á esta aula poderão ser deixados na secção de comentários deste artigo\r\n\r\nNos vemos na sexta aula do curso de programação em Python

\r\n\r\n\r\n
\r\n
\r\n
\r\n

Receba nossas actualizações por email

\r\n
\r\n \r\n \r\n
\r\n

Ver Campanhas anteriores.

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
(Visited 174 times, 1 visits today)
Share