Prof. Natalia Castro Fernandes
Mestrado em Telecomunicações – UFF
2º semestre/2012
Relembrando...
Tipos primitivos
Simples (int, long, float, complex, string)
Compostos
Listas
Tuplas
Dicionários
Conjuntos
Definidos pelo usuário
Classes
Tuplas
Sequências imutáveis de elementos
Funcionalidades semelhantes às listas
Definição de uma tupla
>>>T = (1,2,3)
>>>T[0]
1
Tupla vazia ()
Parênteses são opcionais, se não provocar ambiguidade
(10) inteiro
Se tiver apenas um elemento, é
(10,) Tupla
preciso colocar uma vírgula após o
10, Tupla
elemento.
Função tuple
Transforma um elemento em uma tupla
>>>tuple (“abcd”)
(‘a’, ‘b’, ‘c’, ‘d’)
>>>tuple([1,2,3])
(1,2,3)
Utilização das tuplas
Estruturas que demandam valores imutáveis
Chaves de dicionários
Funções com números variáveis de argumentos
Formatação de texto
Formatação de texto
Formatação
Usado para criar strings misturando texto e valores de
variáveis
Formato
String_template % valor
String_template contém texto e indicadores de variáveis
%s string
%d decimal
Mais detalhes sobre formatação em
%f float
http://docs.python.org/library/string.html
etc.
Exemplo
“Decimal %d” % 10 Decimal 10
“Decimal %d float %f” % (10,10) Decimal 10 float 10.0000
“%s tirou nota %d” % (‘João’, 10) João tirou nota 10
Módulo string
Auxilia a manipulação de strings
Principais funções da classe string
String.find(substring) Retorna o índice da primeira
aparição de substring em string
String.join(sequência_de_strings) Retorna uma
sequência de strings em uma string, utilizando como
separador o valor de String
Ex: “/”.join((‘1’, ‘2’, ‘3’))
Módulo string
String.replace(velho, novo) Retorna uma string com
todas as instâncias de velho substituídas por novo em
String
String.split(separador) Retorna uma lista com as
partes de String separadas de acordo com separador
Ex: >>>a = “Frase de teste para entender o split”
>>>a.split(‘ ‘)
[“Frase”, “de”, “teste”, “para”, “entender”, “o”, “split”]
Dicionários
Estruturas semelhantes às listas, mas que:
Não tem ordem
O índice (ou chave) pode ser de qualquer tipo imutável
Formato
{ chave1:conteúdo1, ... chaveN:conteúdoN}
O conteúdo associado a uma chave pode ser alterado
A chave não pode ser alterada
Ex: dicionario[chave]=“Novo valor”
Novos valores podem ser acrescentados pela adição de uma
chave ainda não definida
Listas x Dicionários
Ex: Criando uma agenda com listas
Criar duas listas, nome e telefone, que armazenam o
nome e o telefone no mesmo índice
Para acrescentar “Joao” com telefone “5019”:
nome+= “Joao”
telefone+=“5019”
Para encontrar o telefone de “Joao”:
Tel = telefone[nome.index[“Joao”]]
i=0
i=1
i=2
Nome
tel
Joao
Maria
Jose
5019
2030
1818
Adiciona elemento no fim da lista
Função de listas que diz o índice
dado o valor buscado
Listas x Dicionários
Ex: Criando uma agenda com dicionários
Criar um dicionário cuja chave é o nome e o conteúdo é o
telefone
Para acrescentar “Joao” com telefone “5019”:
telefone[“Joao”] = “5019”
Para encontrar o telefone de “Joao”:
Tel = telefone[“Joao”]
i=0
i=1
i=2
Nome
tel
Joao
Maria
Jose
5019
2030
1818
Exemplos
Função dict
Usada para criar dicionários
Argumentos
Lista de tuplas (chave, conteúdo)
Ou sequência de itens no formato chave=valor
Nesse caso, as chaves TEM que ser strings sem aspas
Uso do for
Comando for pode ser usado para iterar sobre todas as
chaves de um dicionário
Classe dict
Dicionario.clear() Remove todos os elementos do
dicionário
Atenção:
Método clear
>>> x = { "Joao":"a", "Maria":"b" }
>>> y = x
>>> x.clear()
>>> print x,y
{} {}
Atribuição de dicionário vazio
>>> x = { "Joao":"a", "Maria":"b" }
>>> y = x
>>> x = {}
>>> print x,y
{} {'Joao': 'a', 'Maria': 'b'}
Classe dict
fromkeys(lista,valor) Retorna um novo dicionário
com as chaves em listas associadas à valor
Valor vale, por default, None
Exemplos
>>> {}.fromkeys([2,3])
{2: None, 3: None}
>>> dict.fromkeys(["Joao","Maria"],0)
{'Joao': 0, 'Maria': 0}
>>>dict.fromkeys([(["Joao","Maria"])
{'Joao': None, 'Maria': None}
Classe dict
get(chave,valor)
Obtém o conteúdo de chave
Não causa erro caso chave não exista: retorna valor
Se valor não for especificado, chaves inexistentes
retornam None
Classe dict
Dicionario.has_key(chave) Retorna True se a chave
existe no Dicionário e False, caso não exista
Dicionario.items() Retorna uma lista com todos os
pares chave/conteúdo do dicionário
Dicionario.keys() Retorna uma lista com todas as
chaves do dicionário
Dicionario.values() Retorna uma lista com todos os
valores do dicionário
Classe dict
Dicionario.pop(chave) Retorna o valor de chave e
remove o par chave/valor do dicionário
Dicionario.popitem() Retorna e remove um par
chave/valor aleatório do dicionário
Funções embutidas
len(dicionario) Retorna o tamanho do dicionário
key in dicionario Retorna True se a key pertence ao
dicionário
key not in dicionario Retorna True se a key não
pertence ao dicionário