1.
musicas
=
{
'pink floyd'
: [{
'nome'
:
'dark side'
, ‘tipo
':'
pop
','
emprestado
':False},{'
nome
':'
wall
','
tipo
':'
pop
','
emprestado':
True
}],
2.
'doors'
: [{
'nome'
:
'LA woman’,'
tipo
':'
rock
','
emprestado
':True},{'
nome
':'
live
','
tipo
':'
rock
','
emprestado':
False
}],
3.
'jethro tull'
:[{
'nome'
:
'thick as a brick'
,
'tipo'
: ‘rock
','
emprestado':
False
}]}
No primeiro caso uma solução trivial será:
1.
def
acrescentar(dicio_musicas,autor,album):
2.
dicio_musicas[autor]
=
dicio_musicas.get(autor,[])
+
[album]
Para o segundo caso apresentamos duas soluções:
01.
def
emprestar(dicio_musicas,autor,album):
02.
albuns
=
dicio_musicas.get(autor,[])
03.
if
albuns:
04.
for
musica
in
albuns:
05.
if
musica
=
=
album:
06.
musica[
'emprestado'
]
=
True
07.
break
08.
09.
10.
def
emprestar_b(dicio_musicas,autor,nome_musica):
11.
albuns
=
dicio_musicas.get(autor,[])
12.
if
albuns:
13.
for
musica
in
albuns:
14.
if
musica[
'nome'
]
=
=
nome_musica:
15.
musica[
'emprestado'
]
=
True
16.
break
Finalmente, para o terceiro problema:
1.
def
musicas_tipo(dicio_musicas, tipo):
2.
res
=
[]
3.
for
albuns_autor
in
dicio_musicas.values():
4.
# analisa musicas de um autor
5.
for
album
in
albuns_autor:
6.
if
album[
'tipo'
]
=
=
tipo:
7.
res.append(album[
'nome'
])
8.
return
res
Sem comentários:
Enviar um comentário