You are on page 1of 35

Python - Dicionrios

Introduo Programao
SI1

Contedo
Dicionrios
Conceitos
Operaes
Mtodos
Exerccios

Dicionrios
So estruturas de dados que
implementam mapeamentos
Um mapeamento uma coleo de
associaes entre pares de valores
O primeiro elemento do par chamado de
chave e o outro de valor
chave
chave
chave

valor
valor
valor 3

Dicionrios
Um mapeamento uma
generalizao da ideia de acessar
dados por ndices, exceto que, num
mapeamento, os ndices (ou chaves)
podem ser de qualquer tipo
Geralmente strings e inteiros
4

Dicionrios
Dicionrios representam outra
estrutura de dados interna de Python

Hash tables
Listas indexadas por inteiros
Dicionrios indexados por chaves
(keys), que podem ser de qualquer tipo
imutvel (como strings e inteiros)

Dicionrios
Tm comprimento varivel, so
heterogneos e podem ser

aninhados
So delimitados por {}
Lista de pares chave/valor
separados por vrgulas dentro dos
delimitadores ({})

Operaes
Criando o dicionrio e seus elementos

Inseres em posies aleatrias


7

Exerccios
Crie um dicionrio d e coloque nele seus
dados: nome, idade, telefone,endereo.
Usando o dicionrio d criado
anteriormente, imprima seu nome.

Exerccios
Crie um dicionrio d e coloque nele os
dados fornecidos pelo usurio: nome,
idade, telefone,endereo.
Tambm usando d, imprima todos os
itens do dicionrio no formato chave :
valor, ordenado pela chave

Operaes
Modificando elementos

10

Operaes
Elementos heterogneos/removendo elementos

11

Operaes
As chaves dos dicionrios no so
armazenadas em qualquer ordem
especfica
Na verdade, dicionrios so implementados
por tabelas de espalhamento (Hash Tables)

A falta de ordem proposital

12

Operaes
Listas de chaves e valores

items() retorna uma lista com todos


os pares chave/valor do dicionrio

Mais Operaes
Acesso a valores e chaves

14

Mtodos
clear()
Remove todos os elementos do dicionrio

15

Mtodos
copy()
Retorna um outro dicionrio com os
mesmos pares chave/contedo

16

Mtodos
pop(chave)
Obtm o valor correspondente chave e
remove o par chave/valor do dicionrio

17

Mtodos
iteritems()
Possibilita que cada chave/valor sejam
recuperados em um for

18

Mtodos
update(dic)
Atualiza um dicionrio com os elementos de outro
Os itens em dic so atualizados ou adicionados um a um
ao dicionrio original

19

Mais Operaes
Aninhamento

20

Dados
Utilizado tambm para criar estruturas
usadas em manipulaao de dados
Exemplo:
Estruturas de registros

Registros de Dados

22

Exerccios
2. Crie um dicionrio que uma agenda e
coloque nele os seguintes dados: chave (cpf),
nome, idade, telefone. O programa deve ler
um nmero indeterminado de dados, criar a
agenda e imprimir todos os itens do
dicionrio no formato chave: nome-idadefone.

23

Exerccios
3. Crie um programa que cadastre
informaes de vrias pessoas (nome,
idade e cpf) e depois coloque em um
dicionrio. Depois remova todas as
pessoas menores de 18 anos do
dicionrio e coloque em outro dicionrio.

24

Exerccios
4. Considere um sistema onde os dados so
armazenados em dicionrios. Nesse sistema
existe um dicionario principal e o dicionrio
de backup. Cada vez que o dicionrio
principal atinge tamanho 5, ele imprime os
dados na tela e apaga o seu contedo. Crie
um programa que insira dados em um
dicionrio, realizando o backup a cada dado
e excluindo os dados do dicionrio principal
quando ele atingir tamanho 5.
25

Matrizes com
Dicionrios
Exemplo:

26

Matrizes com
Dicionrios
Inicializando uma matriz:

27

Matrizes com
Dicionrios
Soma de duas matrizes

28

Matrizes com
Dicionrios
Soma de duas matrizes

29

EXERCCIOS
30

Exerccios
5. Faa um algoritmo que preencha uma
matriz 3 X 3 de inteiros e escreva:
A matriz completa
A soma dos nmeros mpares da matriz
A soma dos nmeros pares da matriz

31

Exerccios
6. Fazer um programa que efetua a multiplicao
de duas matrizes de valores inteiros.
O programa deve ler o numero de linhas e colunas de
cada matriz e gerar valores aleatrios para estas.
Ao final, o programa deve imprimir as matrizes originais
e a matriz com a multiplicao das duas anteriores.

32

Exerccios
7. Elabore um algoritmo que preencha
uma matriz 4 X 4 de inteiros e depois
faa:
Imprimir toda a matriz.
Trocar a segunda linha pela terceira.
Trocar a primeira pela quarta coluna.
Imprimir novamente a matriz
33

Exerccios
8. Elabore um programa que preencha
uma matriz 4 X 4 de inteiros e em
seguida gere uma lista com a mdia
aritmtica de cada uma das linhas da
matriz. Escrever a matriz completa e o
contedo da lista com as mdias.

34

Bibliografia

Livro Como pensar como um Cientista de Computao


usando Python Captulo 10
http://pensarpython.incubadora.fapesp.br/portal

Python Tutorial
http://www.python.org/doc/current/tut/tut.html
Dive into Python
http://www.diveintopython.org/
Python Brasil
http://www.pythonbrasil.com.br/moin.cgi/Documenta
caoPython#head5a7ba2746c5191e7703830e02d0f532
8346bcaac
35

You might also like